成员全是static的
专门对集合进行操作的类。
sort方法
Collections.sort( )
可自定义比较器
max方法
Collections.sort( )
可自定义比较器
binarySearch
二分查找
但凡用到binarySearch方法,都必须是有序的。
五. fill
替换元素值
将List集合中的所有元素替换成指定元素.
小练习: 将List集合中的所有元素替换成指定元素.
六. replaceAll
将指定元素替换成指定元素值
七. reverse
反转
八. reverseOrder(ComparatorC)
逆向比较器, 也可将自定义的比较器以参数形式传进去, 出来的结果为反的.
九. synchronized…
使集合同步
十. sawp : 置换两个元素的位置
十一. shuffle : 随机排列元素的位置
十二. Arrays : 用于操作数组的工具类
里面都是静态方法
asList : 将数组变成list集合,
注意:将数组变成集合后,不可以使用集合的增删方法.因为数组的长度是固定的。如果增删了,会发生UnsupportedOperationExecption异常。
如果数组中的元素都是对象,那么变成集合时,数组中的元素就直接转成集合中的元素。
如果数组中的元素都是基本数据类型,那么会该数组作为集合中的元素存在。
例:
List<String> list = Arrays.asList(strArr);
List<Integer> li = Arrays.asList(intArr);
集合变数组
Collection接口中的toArray方法。
指定类型的数组到底要定义多长呢?
当指定的类型的数组长度小于了集合的SIZE,那么该方法内部会创建一个新的数组。长度为集合的SIZE.
当指定的类型的数组长度大于了集合的SIZE,就不会新创建数组,而是使用传递进来的数组。所以创建一个刚刚好的数组最优。
String[] arr = al.toArray(new String[al.size()]);
为什么要将集合变数组?
为了限定对元素的操作,不需要进行增删了。