美文网首页
Collections工具类(操作Collection和Map的

Collections工具类(操作Collection和Map的

作者: 冯宏志 | 来源:发表于2020-12-23 14:09 被阅读0次
import org.junit.Test;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;

public class CollectionsTest {
    @Test
    public void test1(){
        List list = new ArrayList();
        list.add(1);
        list.add(2);
        list.add(3);
        list.add(4);
        list.add(5);
        System.out.println(list);//[1, 2, 3, 4, 5]
        //reverse(List):反转
        Collections.reverse(list);
        System.out.println(list);//[5, 4, 3, 2, 1]

        //shuffle(List):对list进行随机排序
        Collections.shuffle(list);
        System.out.println(list);

        //sort(List,Comparator):根据指定的Comparator产生的顺序对List集合进行排序
        Collections.sort(list);//默认调用Integer的Comparator
        System.out.println(list);//[1, 2, 3, 4, 5]

        //swap(List,int,int)
        Collections.swap(list,0,1);
        System.out.println(list);//[2, 1, 3, 4, 5]

        //Object max(Collection):根据元素的自然顺序,返回给定集合中的最大元素
        //Object max(Collection,Comparator):根据Comparator指定的顺序,返回给定集合中的最大元素
        //Object min(Collection)
        //Object min(Collection,Comparator)
        Comparable max = Collections.max(list);
        System.out.println(max);//5


        //int frequency(Collection,Object):返回集合中指定元素的出现次数
        list.add(1);
        list.add(1);
        int appearTime = Collections.frequency(list, 1);
        System.out.println(appearTime);//3

        //void copy(List dest,List src):将src中的内容复制到dest中
        //List dest = new ArrayList();这样声明会报异常
        List dest = Arrays.asList(new Object[list.size()]);
        Collections.copy(dest,list);
        System.out.println(dest);//[2, 1, 3, 4, 5, 1, 1]

        /*Collections类中提供了多个synchronizedXxx()方法
        * 该方法可将指定集合包装成线程同步的集合
        * 从而解决多线程并发访问集合时的线程安全问题
        *
        * */
        List list1 = Collections.synchronizedList(list);//返回的list1即为线程安全的集合
    }
}

相关文章

网友评论

      本文标题:Collections工具类(操作Collection和Map的

      本文链接:https://www.haomeiwen.com/subject/xjlxgktx.html