Collections:操作Collection、Map的工具类

 1 package maptest;
 2 
 3 import org.junit.Test;
 4 
 5 import java.util.ArrayList;
 6 import java.util.Arrays;
 7 import java.util.Collections;
 8 import java.util.List;
 9 
10 /**
11  * Collections:操作Collection、Map的工具类
12  *
13  *
14  *
15  * 面试题:Collection和Collections的区别?
16  * @author FuJingchao
17  * @Date: 2021/12/25 - 15:34
18  */
19 public class CollectionsTest {
20     /*
21     //排序
22     reverse(List):反转List中元素的顺序
23     shuffle(List):对List元素进行随机排序
24     sort(List):根据元素的自然顺序对指定List集合元素按升序排序
25     sort(List,Comparator):根据指定的Comparator产生的顺序对List集合元素进行排序
26     swap(List,int i,int j):将指定的List集合中的i处元素和j处元素进行交换
27 
28     //查找、替换
29     Object max(Collection): 根据元素的自然顺序,返回给定集合中的最大元素
30     Object max(Collection,Comparator): 根据 Comparator指定的 顺序,返回给定集合中的最大元素
31     Object min(Collection): 根据元素的自然顺序,返回给定集合中的最小元素
32     Object min(Collection,Comparator): 根据 Comparator指定的 顺序,返回给定集合中的最小元素
33     int frequency(Collection,Object):返回指定集合中指定元素的出现次数
34     void copy(List dest,List src):将src中的内容复制到dest中
35     boolean replaceALL(list list,Object oldval,Object newval):使用新值替换List对象的所有旧值
36 
37      */
38     @Test
39     public void test1(){
40         //void copy(List dest,List src):将src中的内容复制到dest中
41         //注意dest的长度不能小于src的长度
42         List list = new ArrayList();
43         list.add(123);
44         list.add(456);
45         list.add(65);
46         list.add(24);
47         list.add(100);
48 
49         //错误写法,报异常:IndexOutOfBoundsException
50 //        List dest = new ArrayList();
51 //        Collections.copy(dest,list);
52 
53         //正确写法
54         List dest = Arrays.asList(new Object[list.size()]);
55         Collections.copy(dest,list);
56         System.out.println(dest);
57 
58         /*
59     Collections 类中提供了多个synchronizedXxx()方法,该方法可将指定集合包装成线程同步的集合,
60     从而可以解决多线程并发访问集合时的线程安全问题
61 
62      */
63         //返回的list1即为线程安全的list
64         List list1 = Collections.synchronizedList(list);
65 
66 
67     }
68 
69 
70 }

 

posted @ 2021-12-25 16:38  橘猫的夏天  阅读(52)  评论(0编辑  收藏  举报