import java.util.Set;
import java.util.TreeSet;
class Person implements Comparable<Person>{
private String name;
private int age;
public Person(String name,int age){
this.name=name;
this.age=age;
}
public String toString(){
return "姓名:"+this.name+" 年龄:"+this.age;
}
public int compareTo(Person per){
if(this.age>per.age){
return 1;
}else if(this.age==per.age){
return 0;
}else{
return -1;
}
}
}
public class SetDemo03{
public static void main(String args[]){
Set<Person> allSet=new TreeSet<Person>();
allSet.add(new Person("张三",22));
allSet.add(new Person("李四",23));
allSet.add(new Person("王五",21));
allSet.add(new Person("王五",21));
allSet.add(new Person("王五",21));
allSet.add(new Person("赵六",32));
allSet.add(new Person("孙七",11));
System.out.println(allSet);
}
}
就是这段代码他实现了Comparable接口,也就覆写了compareTo()方法,但是在这个程序中没有看对象调用compareTo()方法,可以告诉我comapreTo()方法是怎么被调用的吗?