操作Collection以及Map的工具类:Collections Dear 丶 2022-05-17 13:11 145阅读 0赞 import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.List; /* * * 操作Collection以及Map的工具类:Collections * * 面试题:区分Collection和Collections */ public class TestCollections { /* * reverse(List):反转 List 中元素的顺序 shuffle(List):对 List 集合元素进行随机排序 sort(List):根据元素的自然顺序对指定 List 集合元素按升序排序 sort(List,Comparator):根据指定的 Comparator 产生的顺序对 List 集合元素进行排序 swap(List,int, int):将指定 list 集合中的 i 处元素和 j 处元素进行交换 */ public void testCollections1() { List list=new ArrayList(); list.add(123); list.add(456); list.add(12); list.add(78); 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); System.out.println(list); } public void testCollections2() { /* * Object max(Collection):根据元素的自然顺序,返回给定集合中的最大元素 Object max(Collection,Comparator):根据 Comparator 指定的顺序,返回给定集合中的最大元素 Object min(Collection) Object min(Collection,Comparator) int frequency(Collection,Object):返回指定集合中指定元素的出现次数 void copy(List dest,List src):将src中的内容复制到dest中 boolean replaceAll(List list,Object oldVal,Object newVal):使用新值替换 List 对象的所有旧值 */ List list=new ArrayList(); list.add(123); list.add(456); list.add(12); list.add(78); list.add(456); Object obj=Collections.max(list); System.out.println(obj); 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); System.out.println(list1); //通过如下的方法保证list的线程安全 List list2=Collections.synchronizedList(list); System.out.println(list2); } public static void main(String[] args) { TestCollections t=new TestCollections(); t.testCollections1(); t.testCollections2(); } }
还没有评论,来说两句吧...