[Java] 纯文本查看 复制代码import java.util.*;
class jihe7{
public static void main(String[] args){
TreeSet a = new TreeSet();
a.add(new Student("张三",20));
a.add(new Student("李四",30));
a.add(new Student("王二",40));
//a.add(new Student("麻子",50));
Iterator it = a.iterator();
while(it.hasNext()){
Student stu = (Student)it.next();
System.out.println(stu.getName()+"..."+stu.getAge());
}
}
}
class Student implements Comparable{ //定义Comparable接口型的Student类
private String name;
private int age;
Student(String name,int age){
this.name=name;
this.age=age;
}
public String getName(){
return name;
}
public int compareTo(Object obj){ //这一点是我不大理解的地方,已经重写了 compareTo()a方法,搞不懂 Object obj 怎么调用的其他学生。
if(!(obj instanceof Student))
throw new RuntimeException("该对象不是学生");
Student s=(Student)obj;
System.out.println(this.name+"....compareto....."+s.name);
if(this.age>s.age)
return 1;
if(this.age==s.age){
return this.name.compareTo(s.name);
}
return -1;
}
public int getAge(){
return age;
}
public static void sop(Object obj){
System.out.println(obj);
}
}