Collections工具类
概念
方法
public static void reverse(List<?> list)
public static void shuffle(List<?> list)
- 升序排序(元素类型必须实现Comparable接口)
public static void sort(List<T> list)
使用
/**
* Collections工具类使用
*/
public class collections {
public static void main(String[] args) {
List<Integer> list = new ArrayList<>();
list.add(11);
list.add(22);
list.add(33);
list.add(44);
System.out.println("原集合" + list);
//1.sort,升序排序
Collections.sort(list);
System.out.println("排序后的:" + list);
//2.binarySearch,二分查找
int i = Collections.binarySearch(list,44);
System.out.println("二分查找" + i);
//3.copy复制
List<Integer> dest = new ArrayList<>();
for (int j = 0; j <list.size() ; j++) {
dest.add(0);
}
Collections.copy(dest,list);
System.out.println("copy得到的" + dest);
//4.reverse
Collections.reverse(list);
System.out.println("反转之后:" + list);
//5.shuffle
Collections.shuffle(list);
System.out.println("打乱之后" + list);
//6补充
//6.1集合转换为数组
Integer[] arr = list.toArray(new Integer[0]);
System.out.println(Arrays.toString(arr));
//6.2数组转为集合
//集合为一个受限集合,不能增加和删除(数组长度固定)
String[] names = {"zmy","ssw","pjh","syq"};
List<String> list1 = Arrays.asList(names);
System.out.println(list1);
}
}
//输出结果:
原集合[11, 22, 33, 44]
排序后的:[11, 22, 33, 44]
二分查找3
copy得到的[11, 22, 33, 44]
反转之后:[44, 33, 22, 11]
打乱之后[33, 11, 22, 44]
[33, 11, 22, 44]
[zmy, ssw, pjh, syq]