Java array总结


1 Array是java中对对象序列最有效的存储和随机访问。

 

2 Array的大小的固定的,不能改变。

 

3 Array 和 ArrayList

ArrayList是对Array的一个改进,当增加时,新建一个更大的array,将数据进行拷贝。

其他container(thinking in java中将其他集合类称为container)不能存储primitives类型,如int等,而int可以。

Array通过[]进行数据访问,List通过get()进行访问。

 

4 Array其实只是一个reference,有一个成员变量:length,不是方法!

 

5 Arrays是一个工具类,存在于java.util,有sort(),asList()等方法,要注意asList()并不是一个真正的List,在使用Iterator时,asList()的iterator.remove()会抛出异常。

 

除此之外还有System.arraycopy()可以复制一个array,在ArrayList的remove()方法中由于每次删除一个元素后,需要移动数组,因此用arraycopy()进行复制。

 

6 Array 比较

通过Arrays类的equals()方法可以对比两个数组是否相等。

 

7 array内元素比较

Java有两种方法进行比较:

1 )实现java.lang.Comparable接口

假设array内是一个类型为T的数组,只要T实现Comparable接口,就可以用Arrays.sort()进行排序。

2 )用一个单独的类实现Comparator接口

如果现在array中的类型没有实现Comparable接口,这时就需要一个额外的比较类进行排序时的比较操作,这就是一个strategy模式。利用Arrays.sort(array, Comparator)进行排序。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值