Collections操作工具类大部分方法的测试
public class UtilsTest {
public static void main(String[] args) {
System.out.println("======Collections操作工具类======");
List<String> list=new ArrayList<>();
list.add("zhangsan");
list.add("lisi");
//把list后面的元素全部添加到list,参数1:集合<T>,参数2--n:T类型
Collections.addAll(list, "lisi","wangwu");
for(String s:list){
System.out.println(s);
}
//二分查找,参数1:要搜索的集合,参数2:想搜索的值。返回值:该值在集合中的索引。(如果列表包含多个等于指定对象的元素,则无法保证找到的是哪一个)
int binarySearch = Collections.binarySearch(list, "lisi");
System.out.println("binarySearch:"+binarySearch);
//用于获取指定列表的一个动态类型安全视图,参数2:T.class
List<String> checkedList = Collections.checkedList(list, String.class);
System.out.println("checkedList:"+checkedList);
//参数1: <? super T> 参数2: <? extends T>
//2值赋给1,并清空自己
List<String> list2=new ArrayList<>();
list.add("123");
list.add("45");
Collections.copy(list, list2);
System.out.println("list:"+list);
System.out.println("list2:"+list2);
//互斥,无相同元素返回true
boolean disjoint = Collections.disjoint(list, list2);
System.out.println("disjoint:"+disjoint);
//建立空的list
List<Object> emptyList = Collections.emptyList();
System.out.println("emptyList:"+emptyList);
//从当前的c集合上返回一个枚举对象
Enumeration<String> enumeration = Collections.enumeration(list);
//使用参数2填充list集合,参数1:集合<T>,参数2--n:T类型
//Collections.fill(list, "zhangsan");
System.out.println("fill:"+list);
/*max(Collection<? extends T> coll) 获取coll集合中的最大元素
reverse(List<?> list) 反转集合中的元素
reverseOrder() 反转比较器的比较方式
shuffle(List<?> list) 对集合中的元素进行随机排列
sort(List<T> list) 对list集合排序*/
Collections.shuffle(list);
System.out.println("shuffle:"+list);
// 把一个非同步的集合变成同步的集合
Collection<String> synchronizedCollection = Collections.synchronizedCollection(list);
//把一个集合变成不可变的集合
List<String> unmodifiableList = Collections.unmodifiableList(list);
}
}