1. 程式人生 > 實用技巧 >Java collections集合工具類方法

Java collections集合工具類方法

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

public class collections {
    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<>();
        /*list.add("a");
        list.add("b");*/
        Collections.addAll(list, "a", "b", "c", "d", "e");
        System.out.println(list);
        //隨機打亂函式
        Collections.shuffle(list);
        System.out.println(list);
        //sort函式 記住只能對list使用 set不能使用
        //預設升序
        list.add("i");
        list.add("b");
        //System.out.println(list);
        Collections.sort(list);
        System.out.println(list);

        //利用sort排序自定義結構
        //Compare函式規則
        //自己(this)-引數=升序
        //引數0自己(this)=降序
        ArrayList<Person> list2 = new ArrayList<>();
        list2.add(new Person("aa", 23));
        list2.add(new Person("bb", 15));
        list2.add(new Person("dd", 88));
        Collections.sort(list2);
        System.out.println(list2);
        //o1-o2 升序
        //o2-o1 降序
        Collections.sort(list, new Comparator<String>() {
            @Override
            public int compare(String o1, String o2) {
                return o2.compareTo(o1);
            }
        });
        System.out.println(list);
    }
}

Person類覆蓋的compareto函式

public int compareTo(Person o) {
        return o.age-this.age;
    }