Java -- 集合Collections

xiaoxiao2021-02-28  22

/**  * 操作Collection以及Map的工具类:Collections  * 面试题:区分Collection和Collections  * Collection:可以操作List和Set  * Collections:可以操作Collection以及Map  *  *  */ public class Test_Collections { // @Test public void Test1(){ List list = new ArrayList(); list.add(123); list.add(456); list.add(12); list.add(123); System.out.println(list); Collections.reverse(list); //反转排序元素 System.out.println(list); Collections.shuffle(list); //随机排序元素 System.out.println(list); Collections.sort(list); System.out.println(list); //从小到大排序元素 Collections.swap(list, 0, 2); //交换第0下标的元素和第2下标的元素 System.out.println(list); } // @Test public void Test2(){ List list = new ArrayList(); list.add(123); list.add(456); list.add(12); list.add(78); Object o1 = Collections.max(list); //元素里的最大值 System.out.println(o1); Object o2 = Collections.min(list); //元素里的最小值 System.out.println(o2); int count = Collections.frequency(list, 456); //查找元素里是否有此元素的个数 System.out.println(count); // 实现List的复制 // List list1 = new ArrayList(); //错误的实现方式 List list1 = Arrays.asList(new Object[list.size()]); Collections.copy(list1, list); //将list中的元素拷贝到list1中 System.out.println(list1); // 通过如下的方法就可以保证list的线程安全性 List list2 = Collections.synchronizedList(list); //将不安全的变成安全的 } // @Test public void Test3(){ Scanner s = new Scanner(System.in); System.out.println("请输入10个整数:"); List list = new ArrayList(); for(int i = 0 ; i < 10 ; i++){ int j = s.nextInt(); list.add(i); } System.out.println("按照倒序的顺序显示:"); Collections.reverse(list); Iterator iterator = list.iterator(); while(iterator.hasNext()){ System.out.print(iterator.next()); } System.out.println(); System.out.println("按照从大到小的顺序显示:"); Collections.sort(list); //默认从小到大排序 Collections.reverse(list); Iterator iterator1 = list.iterator(); while(iterator1.hasNext()){ System.out.print(iterator1.next()); } }
转载请注明原文地址: https://www.6miu.com/read-850082.html

最新回复(0)