在书上找的一串Treeset自定义排序代码,为什么最后没能正确输出?
import java.util.Comparator;
import java.util.TreeSet;
class Student{
private String name;
private String id;/*age数据类型不能换为intCompareTo是String类的一个方法*/
public Student(String id,String name){
this.name=name;
this.id=id;
}
public String getId(){
return id;
}
public String getName(){
return name;
}
public String toString() {
return id+":"+name;
}
}
public class Desdend {
public static void main(String[] args){
TreeSet ts = new TreeSet(new Comparator() {
@Override
public int compare(Object o1, Object o2) {
Student stu1 = (Student) o1;
Student stu2 = (Student) o2;
if (!stu1.getId().equals(stu2.getId())) {
return stu1.getId().compareTo(stu2.getId());
} else {
return stu1.getName().compareTo(stu2.getName());
}
}
});
ts.add(new Student("38","张三"));
ts.add(new Student("28","李四"));
ts.add(new Student("78","王五"));
ts.add(new Student("8","赵六"));
System.out.println(ts);
}
}
以上代码为什么没能对数据进行正确排序,与第27行有什么关系,为什么会是灰色