addAll();

往汇合中增加一些元素

Collections.addAll(str, "a", "b", "c");

shuffle();

随机打乱汇合

Collections.shuffle(str);

sort(List<T> list);

将汇合中的元素依照默认规定排序(升序)

Collections.sort(str);

对自定义类型排序(除非重写compareTo()办法),否则不能用。
必须实现Compare接口,重写compareTo办法定义排序。

public class Person implements Comparable<Person>{            @Override    public int compareTo(Person o) {        //return 0;  //认为元素都是雷同的        //自定义规定,比拟年龄(this.参数Person)        return this.getAge() - o.getAge(); //升序        return o.getAge() - this.getAge(); //降序    }}

Comparable接口排序规定:

本人(this) - 参数  :升序参数 - 本人(this)  :降序

sort(List<T> list, Comparator<? super T>);

将汇合中元素依照指定规定排序

Comparable和Comparator的区别:

Comparable:本人(this)和他人(参数)比拟,本人须要实现Comparable接口,重写compareTo办法。

Comparator:相当于找一个第三方的裁判,比拟两个

也须要重写比拟办法compare();

        Collections.sort(str, new Comparator<Integer>() {                        //重写比拟的规定            @Override            public int compare(Integer o1, Integer o2) {                return o1 - o2; //升序//                return o2 - o1; //降序            }        });
        Collections.sort(str, new Comparator<Person>() {            //重写比拟的规定            @Override            public int compare(Person o1, Person o2) {                int i = o1.getAge() - o2.getAge();                if (i == 0) {                //如果年龄统一,比拟字符串                    return o1.getName().charAt(0) - o2.getName().charAt(0);                } else {                    return o1.getAge() - o2.getAge();                }            }        });