• java.util.Collections类的方法


    java.util.Collections类的方法

    addAll()方法

    Modifier and Type 方法 描述
    static boolean addAll(Collection c, T... elements) 将所有指定的元素添加到指定的集合。
    import java.util.*;
    
    public class TestAddAll {
        public static void main(String[] args) {
            test();
        }
    
        // 测试addAll()方法
        public static void test() {
            ArrayList<Integer> list = new ArrayList<>();
            HashSet<Integer> set = new HashSet<>();
            LinkedList<Integer> linkedList = new LinkedList<>();
            Collections.addAll(list,1,2,5,10);
            Collections.addAll(set,1,3,10,9,3);
            Collections.addAll(linkedList, 1,2,3,10,9);
            System.out.println("Array列表中的元素:"+list);
            System.out.println("set集合中的元素"+set);
            System.out.println("linked列表中的元素:"+linkedList);
        }
    }
    
    
    Array列表中的元素:[1, 2, 5, 10]
    set集合中的元素[1, 3, 9, 10]
    linked列表中的元素:[1, 2, 3, 10, 9]
    

    copy()方法

    Modifier and Type 方法 描述
    static void copy(List dest, List src) 将所有元素从一个列表复制到另一个列表中。
    import java.util.*;
    
    public class TestCopy {
        public static void main(String[] args) {
            test();
        }
    
        // 测试 copy()方法
        public static void test() {
            ArrayList<Integer> arrayList = new ArrayList<>();
            LinkedList<Integer> linkedList = new LinkedList<>();
    
    
            List<Integer> asList = Arrays.asList(1, 3, 10, 20);
            Collections.addAll(arrayList,1,2,5,10);
            Collections.addAll(linkedList, 1,2,3,10);
    
            Collections.copy(arrayList,linkedList);
            Collections.copy(linkedList, asList);
            linkedList.add(33);
            System.out.println("将LinkedList复制到ArrayList:"+arrayList);
            System.out.println("将固定长度List复制到LinkedList变成了不固定长List:"+linkedList);
    
        }
    }
    
    将LinkedList复制到ArrayList:[1, 2, 3, 10]
    将固定长度List复制到LinkedList变成了不固定长List:[1, 3, 10, 20, 33]
    

    fill()方法

    Modifier and Type 方法 描述
    static void fill(List list, T obj) 用指定的元素替换指定列表的所有元素。
    import java.util.*;
    
    public class TestFill {
        public static void main(String[] args) {
            test();
        }
    
        // 测试 fill()方法
        public static void test() {
            ArrayList<Integer> arrayList = new ArrayList<>();
            LinkedList<Integer> linkedList = new LinkedList<>();
    
    
            List<Integer> asList = Arrays.asList(1, 3, 10, 20);
            Collections.addAll(arrayList,1,2,5,10);
            Collections.addAll(linkedList, 1,2,3,10);
            Collections.fill(asList, 0);
            Collections.fill(arrayList,0);
            Collections.fill(linkedList,0);
            System.out.println("固定长度List替换"+asList);
            System.out.println("ArrayList替换"+arrayList);
            System.out.println("LinkedList替换"+linkedList);
    
    
        }
    }
    
    固定长度List替换[0, 0, 0, 0]
    ArrayList替换[0, 0, 0, 0]
    LinkedList替换[0, 0, 0, 0]
    

    replaceAll()

    Modifier and Type 方法 描述
    static boolean replaceAll(List list, T oldVal, T newVal) 将列表中一个指定值的所有出现替换为另一个。
    import java.util.*;
    
    public class TestR {
        public static void main(String[] args) {
            test();
        }
    
        // 测试 replaceAll()
        public static void test() {
    
            LinkedList<Integer> linkedList = new LinkedList<>();
            Collections.addAll(linkedList, 1,2,3,10,3,2,3);
            Collections.replaceAll(linkedList,3,333);
            
            System.out.println("将列表中3替换为333:"+linkedList);
            
        }
    }
    
    将列表中3替换为333:[1, 2, 333, 10, 333, 2, 333]
    

    reverse()

    Modifier and Type 方法 描述
    static void reverse(List list) 反转指定列表中元素的顺序。
    import java.util.*;
    
    public class TestR {
        public static void main(String[] args) {
            test();
        }
    
        // 测试 reverse()
        public static void test() {
    
            LinkedList<Integer> linkedList = new LinkedList<>();
            Collections.addAll(linkedList, 1,2,3,10,3,2,3);
            Collections.reverse(linkedList);
    
            System.out.println("反转列表:"+linkedList);
    
        }
    }
    
    反转列表:[3, 2, 3, 10, 3, 2, 1]
    

    swap()

    Modifier and Type 方法 描述
    static void swap(List list, int i, int j) 交换指定列表中指定位置的元素。
    import java.util.Collections;
    import java.util.LinkedList;
    
    public class TestS {
        public static void main(String[] args) {
            test();
        }
    
        // 测试 swap()
        public static void test() {
    
            LinkedList<Integer> linkedList = new LinkedList<>();
            Collections.addAll(linkedList, 1,2,3,10,3,2,3);
            Collections.swap(linkedList,0,3);
    
            System.out.println("交换0,3位置元素:"+linkedList);
    
        }
    }
    
    交换0,3位置元素:[10, 2, 3, 1, 3, 2, 3]
    

    sort()

    Modifier and Type 方法 描述
    static >void sort(List list) 根据其元素的natural ordering按照升序排列指定的列表。
    static void sort(List list, Comparator c) 根据指定的比较器引起的顺序对指定的列表进行排序。
    import java.util.Collections;
    import java.util.LinkedList;
    
    public class TestS {
        public static void main(String[] args) {
            test();
        }
    
        // 测试 sort()
        public static void test() {
    
            LinkedList<Integer> linkedList = new LinkedList<>();
            Collections.addAll(linkedList, 1,2,3,10,3,2,3);
            Collections.sort(linkedList);
    
            System.out.println("排序:"+linkedList);
    
        }
    }
    
    排序:[1, 2, 2, 3, 3, 3, 10]
    

    shuffle()

    Modifier and Type 方法 描述
    static void shuffle(List list) 使用默认的随机源随机排列指定的列表。

    | static void | shuffle(List list, Random rnd) | 使用指定的随机源随机排列指定的列表。 |

    import java.util.Collections;
    import java.util.LinkedList;
    
    public class TestS {
        public static void main(String[] args) {
            test();
        }
    
        // 测试 shuffle()
        public static void test() {
    
            LinkedList<Integer> linkedList = new LinkedList<>();
            Collections.addAll(linkedList, 1,2,3,10,3,2,3);
            Collections.shuffle(linkedList);
    
            System.out.println("打乱列表:"+linkedList);
    
        }
    }
    
    
    打乱列表:[3, 2, 2, 3, 3, 1, 10]
    
  • 相关阅读:
    [NOI2014]动物园
    [NOI2014]起床困难综合症
    bzoj2688 Green Hackenbush
    luogu P2575 高手过招
    [NOI2015]荷马史诗
    win10系统U盘读取不了怎么解决 三种方法快速解决&quot;文件或目录损坏且无法读取& 发布时间:2020-06-05 09:19:46 作者:佚名 我要评论
    在 Linux 中,最直观、最可见的部分就是 文件系统(file system)
    GB 18030-2000《信息技术信息交换用汉字编码字符集基本集的扩充
    docker 分层 隔离
    DNS和BIND
  • 原文地址:https://www.cnblogs.com/sweetorangezzz/p/12920236.html
Copyright © 2020-2023  润新知