JAVA单排日记-2020/1/3-1-Collections集合工具类的方法

在这里插入图片描述

1.Collections.addAll() 一次添加多个元素

import java.util.ArrayList;
import java.util.Collections;

public class DemoCollections {
    public static void main(String[] args) {
        ArrayList<String> list01 = new ArrayList<>();

        //之前的写法
        list01.add("a");
        list01.add("b");
        list01.add("c");
        list01.add("d");

        //Collections集合工具类
        Collections.addAll(list01,"a","b","c");
    }
}

2.Collections.shuffle() 打乱集合元素顺序

import java.util.ArrayList;
import java.util.Collections;

public class DemoCollections {
    public static void main(String[] args) {
        ArrayList<String> list01 = new ArrayList<>();

        //Collections集合工具类
        Collections.addAll(list01,"a","b","c");

        System.out.println(list01);

        Collections.shuffle(list01);
        System.out.println(list01);
    }
}

在这里插入图片描述

3.Collections.sort() 元素排序

默认排序(升序):
Collections.sort(集合名)
import java.util.ArrayList;
import java.util.Collections;

public class DmoeCollectionsSort {
    public static void main(String[] args) {
        ArrayList<String> list01 = new ArrayList<>();

        Collections.addAll(list01,"m","a","c","f","b","q");
        System.out.println(list01);

        Collections.sort(list01);
        System.out.println(list01);
    }
}

在这里插入图片描述

按照自定义格式排序:定义实现类,重写接口Comparable接口中的compaTo()方法:

默认返回0,为升序排序

    @Override
    public int compareTo(ClassCompareTo classCompareTo) {
        return 0;
    }

自己(this)- 参数:升序
参数- 自己(this):降序

    @Override
    public int compareTo(ClassCompareTo classCompareTo) {
        return this.getAge()-classCompareTo.getAge();
    }
public class ClassCompareTo implements Comparable<ClassCompareTo> {
     String name;
     int age;

    public ClassCompareTo() {
    }

    public ClassCompareTo(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    @Override
    public String toString() {
        return "ClassCompareTo{" +
                "name='" + name + '\'' +
                ", age=" + age +
                '}';
    }

    @Override
    public int compareTo(ClassCompareTo classCompareTo) {
        return this.getAge()-classCompareTo.getAge();
    }
}
import java.util.ArrayList;
import java.util.Collections;

public class DmoeCollectionsSort {
    public static void main(String[] args) {
        ClassCompareTo one = new ClassCompareTo("张三",25);
        ClassCompareTo two = new ClassCompareTo("李四",15);
        ClassCompareTo three = new ClassCompareTo("王五",45);

        ArrayList<ClassCompareTo> list = new ArrayList<>();

        Collections.addAll(list,one,two,three);
        System.out.println(list);

        Collections.sort(list);
        System.out.println(list);
    }
}

在这里插入图片描述

3.Collections.sort(集合名,Comperetor) 元素自定义排序

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;

public class DemoCollections {
    public static void main(String[] args) {
        ArrayList<Integer> list01 = new ArrayList<>();

        //Collections集合工具类
        Collections.addAll(list01,34,23,343,232,2,1);

        System.out.println(list01);

        Collections.sort(list01, new Comparator<Integer>() {
            @Override
            public int compare(Integer s, Integer t1) {
                return s-t1;
            }
        });
        System.out.println(list01);

    }
}

在这里插入图片描述

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;

public class DemoCollections {
    public static void main(String[] args) {
        ArrayList<String> list01 = new ArrayList<>();

        //Collections集合工具类
        Collections.addAll(list01,"1","e","w","a","b","c");

        System.out.println(list01);

        Collections.sort(list01, new Comparator<String>() {
            @Override
            public int compare(String s, String t1) {
                return s.charAt(0)-t1.charAt(0);
            }
        });
        System.out.println(list01);
    }
}

在这里插入图片描述

发布了90 篇原创文章 · 获赞 1 · 访问量 2054

猜你喜欢

转载自blog.csdn.net/wangzilong1995/article/details/103827103