Comparable和Comparator的区别
Comparable接口:这是一个内部比较器,主要通过修改实例类的部分方法来实现排序。只有实现了Comparable接口中的compareTo方法才能使用Collections.sort()和Arrays.sort()方法进行排序。
Comparator接口:这是一个外部比较器。可以针对某些没有实现Comparable接口的实例类的排序,可以创建一个属于这个类的排序器。主要是要用匿名内部类的方式实现Comparator()接口中的compare()的方法。
注意:这里的Collections是Collection接口的方法类,前往不能少了那个s。
Comparable和Comparator的使用方法
Comparable:继承Comparable接口,并实现里面的comparaTo方法,(1就是大于,-1就是小于,0就是等于)
public class Test implements Comparable<Test>{
private String name;
private int age;
public Test(String name, int age) {
this.name = name;
this.age = age;
}
public Test() {
}
//重写compareto方法,这是按照年龄从小到大排序的结果
@Override
public int compareTo(Test o