zoukankan      html  css  js  c++  java
  • java集合框架之Collections

    参考http://how2j.cn/k/collection/collection-collections/369.html

    Collections是一个类,容器的工具类,就如同Arrays是数组的工具类

    反转

    reverse 使List中的数据发生翻转

    package collection;
       
    import java.util.ArrayList;
    import java.util.Collections;
    import java.util.List;
       
    public class TestCollection {
        public static void main(String[] args) {
            //初始化集合numbers
            List<Integer> numbers = new ArrayList<>();
             
            for (int i = 0; i < 10; i++) {
                numbers.add(i);
            }
             
            System.out.println("集合中的数据:");
            System.out.println(numbers);
             
            Collections.reverse(numbers);
             
            System.out.println("翻转后集合中的数据:");
            System.out.println(numbers);
             
        }
    }

    混淆

    shuffle 混淆List中数据的顺序

    package collection;
       
    import java.util.ArrayList;
    import java.util.Collections;
    import java.util.List;
       
    public class TestCollection {
        public static void main(String[] args) {
            //初始化集合numbers
            List<Integer> numbers = new ArrayList<>();
             
            for (int i = 0; i < 10; i++) {
                numbers.add(i);
            }
             
            System.out.println("集合中的数据:");
            System.out.println(numbers);
             
            Collections.shuffle(numbers);
             
            System.out.println("混淆后集合中的数据:");
            System.out.println(numbers);
             
        }
    }

    排序

    sort 对List中的数据进行排序

    package collection;
       
    import java.util.ArrayList;
    import java.util.Collections;
    import java.util.List;
       
    public class TestCollection {
        public static void main(String[] args) {
            //初始化集合numbers
            List<Integer> numbers = new ArrayList<>();
             
            for (int i = 0; i < 10; i++) {
                numbers.add(i);
            }
             
            System.out.println("集合中的数据:");
            System.out.println(numbers);
     
            Collections.shuffle(numbers);
            System.out.println("混淆后集合中的数据:");
            System.out.println(numbers);
     
            Collections.sort(numbers);
            System.out.println("排序后集合中的数据:");
            System.out.println(numbers);
             
        }
    }

    交换

    swap 交换两个数据的位置

    package collection;
       
    import java.util.ArrayList;
    import java.util.Collections;
    import java.util.List;
       
    public class TestCollection {
        public static void main(String[] args) {
            //初始化集合numbers
            List<Integer> numbers = new ArrayList<>();
             
            for (int i = 0; i < 10; i++) {
                numbers.add(i);
            }
             
            System.out.println("集合中的数据:");
            System.out.println(numbers);
     
            Collections.swap(numbers,0,5);
            System.out.println("交换0和5下标的数据后,集合中的数据:");
            System.out.println(numbers);
             
        }
    }

    滚动

    rotate 把List中的数据,向右滚动指定单位的长度

    package collection;
       
    import java.util.ArrayList;
    import java.util.Collections;
    import java.util.List;
       
    public class TestCollection {
        public static void main(String[] args) {
            //初始化集合numbers
            List<Integer> numbers = new ArrayList<>();
             
            for (int i = 0; i < 10; i++) {
                numbers.add(i);
            }
             
            System.out.println("集合中的数据:");
            System.out.println(numbers);
     
            Collections.rotate(numbers,2);
            System.out.println("把集合向右滚动2个单位,标的数据后,集合中的数据:");
            System.out.println(numbers);
             
        }
    }

    线程安全化

    synchronizedList 把非线程安全的List转换为线程安全的List。

    package collection;
     
    import java.util.ArrayList;
    import java.util.Collections;
    import java.util.List;
     
    public class TestCollection {
        public static void main(String[] args) {
            List<Integer> numbers = new ArrayList<>();
     
            System.out.println("把非线程安全的List转换为线程安全的List");
            List<Integer> synchronizedNumbers = (List<Integer>) Collections.synchronizedList(numbers);
     
        }
    }
  • 相关阅读:
    【模板】快速幂&取余运算
    【模板】ST表
    LOJ #10070 最小生成树计数
    【模板】KMP字符串匹配
    PL/SQL编程要点和注意点
    数据不同方式的提取和提交的性能测试(转载)
    Oracle分析函数之开窗子句-即WINDOWING子句
    Oracle树反向查询的优化(转载)
    oracle默认的hr用户使用脚本安装
    展开BOM并使用最终用量的算法(转载)
  • 原文地址:https://www.cnblogs.com/lijingran/p/9081649.html
Copyright © 2011-2022 走看看