• java集合类史上最细讲解 - Collections工具类


    java集合类史上最细讲解 - Collections工具类

    1.Collections工具类

    Collections是java中一个很强大的工具类,可以很方便的操作java list,map,set


    2.使用方法

    import java.util.ArrayList;
    import java.util.Collections;
    import java.util.Comparator;
    
    /**
     * Collections工具类
     */
    public class CollectionsText {
        @SuppressWarnings({"all"})
        public static void main(String[] args) {
            ArrayList arrayList = new ArrayList();
            arrayList.add("tom");
            arrayList.add("king");
            arrayList.add("mimi");
            arrayList.add("kangkang");
            // 反转元素
            Collections.reverse(arrayList);
            System.out.println(arrayList);
            // 随机排序
            Collections.shuffle(arrayList);
            System.out.println(arrayList);
            // 升序排序
            Collections.sort(arrayList);
            System.out.println(arrayList);
            // 按照指定的比较器排序,比如按照字符串长度升序
            Collections.sort(arrayList, new Comparator() {
                @Override
                public int compare(Object o, Object t1) {
                    return ((String) o).length() - ((String) t1).length();
                }
            });
            System.out.println(arrayList);
            // 交换元素位置,指定i和j位置的元素进行交换
            Collections.swap(arrayList,0,1);
            System.out.println(arrayList);
            // 返回最大值,最小值使用min
            System.out.println(Collections.max(arrayList));
            // 自定义比较器,返回最大值,例如返回字符串长度最长的
            Object maxObject = Collections.max(arrayList, new Comparator() {
                @Override
                public int compare(Object o, Object t1) {
                    return ((String) o).length() - ((String) t1).length();
                }
            });
            System.out.println(maxObject);
            // 统计集合中某一个元素出现的次数
            System.out.println(Collections.frequency(arrayList,"tom"));
            // 拷贝
            ArrayList arrayList1 = new ArrayList();
            for (int i = 0; i < arrayList.size(); i++) {
                arrayList1.add("");
            }
            Collections.copy(arrayList1,arrayList);
            System.out.println(arrayList1);
            // 替换
            Collections.replaceAll(arrayList,"tom","汤姆");
            System.out.println(arrayList);
        }
    }
    ------------------------------------
    输出:
    [kangkang, mimi, king, tom]
    [king, kangkang, mimi, tom]
    [kangkang, king, mimi, tom]
    [tom, king, mimi, kangkang]
    [king, tom, mimi, kangkang]
    tom
    kangkang
    1
    [king, tom, mimi, kangkang]
    [king, 汤姆, mimi, kangkang]
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71

    杨帆,启航⛵

  • 相关阅读:
    汇编语言之栈
    经典算法——二分查找
    JVM虚拟机:如何查看自己的JVM默认的垃圾回收器
    页面功能并不是所有用户都能执行 点击判断用户权限路由是否进行跳转
    系数( coefficients)、因数或因子( factors)
    服装企业为什么要谈信息化?
    OCP Java17 SE Developers 复习题06
    Java高级——前端编译和优化
    【wavesurfer.js实战范例】多区域音频标注(含区域实时切换显示)
    [Games101] Lecture 03-04 Transformation
  • 原文地址:https://blog.csdn.net/Gherbirthday0916/article/details/126051023