Collections工具类

简介: Collections工具类

Collections工具类

1.排序操作(主要针对list接口提供)

reverse(List list): 反转指定集合元素的顺序

shuffle(List,list): 对List里的元素进行随机排序

sort(List list): 对list中的元素根据自然升序排序

sort(List list,Comparator c): 自定义排序规则

swap(List list,int i,int j):将指定List集合中i处元素和j处元素进行交换

rotate(List list,int distance): 将所有元素右移指定长度,如果distance等于size结果不变

2.查找和替换

binarySearch(List list,Object key):使用二分搜索法,以获得指定对象在List中的索引,前提是集合已经排序好

max(Collection c) :返回最大元素

max(Collecton c,Comparator c1):根据自定义比较器,返回最大元素

min(Collection c) :返回最小元素

min(Collecton c,Comparator c1):根据自定义比较器,返回最小元素

fill(List list ,Object obj):填充集合

frequency(Collecton c,Object o):返回指定集合中指定对象出现的次数

replaceAll(List list,Object old, Object new): 替换

3.同步控制

synchronizedSet、synchronizedSortedSet、synchronizedList、synchronizedMap、synchronizedSortedMap

4.设置不可变集合

emptyXxx():返回一个空的不可变的集合对象

singletonXxx():返回一个只包含指定对象的,不可变的集合对象

unmodifiableXxx():返回指定集合对象的不可变视图

5.其他

disjoint(Collection<?> c1, Collecton<?> c2):如果两个指定collection中没有相同元素,则返回true

addAll(Collecton<? super T>c,T…a )一种方便的方式,将所有指定元素添加到指定collection中

Comparator reverseOrder(Comparator cmp):返回一个比较器,它强行反转指定比较器的顺序,如果指定比较器为null,则此方法等同reverseOrder() (换句话说,它返回一个比较器,该比较器强行反转实现Comparable接口哪些对象collection上的自然顺序)

public class Test1 {
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        list.add("jack");
        list.add("lili");
        list.add("tom");
        list.add("tom");
        //1. 排序操作(主要针对list相关)
        //反转
        // Collections.reverse(list);
        // 随机排序
        //Collections.shuffle(list);
        // 自然升序排列(自定义对象的话需要传入比较器)
        //Collections.sort(list);
        // 将指定list集合中i处元素和j处元素进行交换
        // Collections.swap(list,1,2);
        // 将所有元素向右移指定长度
        //Collections.rotate(list,2);
        // 2.查找和替换类(主要针对Collection接口相关)
        // 获得对象在list中的索引,前提是集合已经排序
        //int tom = Collections.binarySearch(list, "tom");
        //System.out.println(tom);
        //3.返回最大元素(自定义对象的话需要传比较器)
//        String max = Collections.max(list);
//        System.out.println(max);
        //4 返回最小元素(同上)
//        String min = Collections.min(list);
//        System.out.println(min);
        // 5.填充
        //Collections.fill(list,"b");
        // 求集合当中某一个值出现的次数
        //System.out.println(Collections.frequency(list,"tom"));
        //替换元素
        // boolean b = Collections.replaceAll(list, "tom", "bb");
        // System.out.println(b);
        // 构造线程安全的集合
        //List<String> synchronizedList = Collections.synchronizedList(list);
        // 返回一个空的集合
        //List<String> list1 = Collections.emptyList();
        // 比较两个集合有没有相同元素
        //Collections.disjoint(list,list);
        // 倒序
        Collections.sort(list, Collections.reverseOrder());
        System.out.println(list);
    }
}


目录
相关文章
|
2月前
|
Java
常用工具类-Collections
本文介绍了Java中Collections工具类的功能和用法,包括对集合进行排序、查找、填充操作,判断集合是否有交集,以及创建不可变集合的方法。通过示例代码展示了如何使用Collections类提供的静态方法,如reverse、shuffle、sort、swap、binarySearch、max、min、fill、frequency、disjoint、emptyList等,突出了Collections类在操作集合时的便利性和实用性。
常用工具类-Collections
|
6月前
|
安全 算法 Java
Java Collections工具类:常用方法与技巧
Java Collections工具类:常用方法与技巧
103 0
|
11月前
|
Java
【零基础学Java】—Collections集合工具类(四十二)
【零基础学Java】—Collections集合工具类(四十二)
|
存储 Java
Java集合Collections工具类
Java集合Collections工具类
66 0
|
安全 Java 索引
collections类
collections类
|
Java
Java 中Collections工具类的使用
Java 中Collections工具类的使用
52 0
|
存储 Java 索引
Arrays Collections工具类
Arrays Collections工具类