集合工具类Collections
import java.util.ArrayList;
import java.util.Collections;
……
ArrayList<String> list = new ArrayList<>();
Collections.addAll(list, "a","b","c","d""e");//往list列表中添加a,b,c,d,e元素
Collections.shuffle(list);//打乱集合顺序
Collections.sort(list);//默认是升序,进行排序 只能是list,不能是set集合
注意:
sort方法使用前提被排序的集合里面存储的元素必须实现Comparable,重写接口中的方法compareTo()定义排序的规则
先实现Comparable接口:
public class Person implements Comparable<Person>{}
再重写compareTo方法:
@Override
public int compareTo(Person p) {
//return 0; //认为元素都是相同的
//自定义比较的规则,比较两个人的年龄(this,参数person)
//return this.getAge() - p.getAge();//按年龄的升序
//return p.getAge() - this.getAge();//按年龄的降序
}
Comparator和Comparable的区别
Comparable:自己(this)和别人(参数)比较,自己需要实现Comparable接口,重写compareTo方法
Comparator:相当于找一个第三方的裁判,来比较两个人
Collections.sort(list, new Comparator<Integer>() {
//重写比较的规则
@Override
public int compare(Integer integer, Integer t1) {
//return integer-t1; //升序
return t1-integer; //降序
}
});