/*
- Collections工具类
- 有了这个工具类,可以选择性记住一些集合
- 单列集合只需要记住 ArrayList
- 双列集合记住 HashMap TreeMap LinkedHashMap
- 一般关系集合哪些特点:
- 1.是否有序
- 2.是否唯一
- 3.是否可重复
- 4.是否可排序
- 5.是否线程安全
- 6.效率 【数据结构】
- 7.求最值
- 8.倒置
- 9.查找
- 10.随机
*/
package com.sxt.collectionsdemo;
import java.util.ArrayList;
import java.util.Collections;
public class CollectionsDemo01 {
public static void main(String[] args) {
ArrayList<Integer> list = new ArrayList<>();
list.add(20);
list.add(18);
list.add(60);
list.add(20);
list.add(12);
list.add(32);
list.add(60);
list.add(72);
list.add(2);
list.add(9);
list.add(15);
list.add(20);
// 默认有序
System.out.println("默认有序: " + list);
// 变无序
// Collections.shuffle(list);
// System.out.println("变无序: " + list);
// 2.是否唯一 选择排序法
for (int i = 0; i < list.size(); i++) {
for (int j = i+1; j < list.size(); j++) {
if (list.get(i).equals(list.get(j))) {
list.remove(j);
j--;
}
}
}
System.out.println("变唯一: " + list);
// 变排序
Collections.sort(list);
System.out.println("变排序: " + list);
// 5.是否线程安全
Collections.synchronizedList(list);
// 7.求最值
System.out.println("最大值: " + Collections.max(list));
System.out.println("最小值: " + Collections.min(list));
// 8.倒置
// Collections.reverse(list);
// System.out.println("倒置后: " + list);
// 9.查找
int index = Collections.binarySearch(list, -32);
// System.out.println("index: " + index + ",元素: " + list.get(index));
System.out.println(index);
}
}