package settest;
import java.util.*;
import java.text.*;
public class Test02 {
public static void main(String[] args) throws Exception {
User u1 =new User("张三",30);
User u2 =new User("李四",21);
User u3 =new User("阿狸",39);
User u4 =new User("太子",15);
User u5 =new User("悟空",20);
User u6 =new User("榴莲",20);
// 姓名是:太子,年龄是:15。
// 姓名是:张三,年龄是:30。
// 姓名是:悟空,年龄是:20。
// 姓名是:李四,年龄是:21。
// 姓名是:榴莲,年龄是:20。
// 姓名是:阿狸,年龄是:39。
SortedSet s = new TreeSet();
s.add(u1);
s.add(u2);
s.add(u3);
s.add(u4);
s.add(u5);
s.add(u6);
Iterator i =s.iterator();
while(i.hasNext()){
System.out.println(i.next());
}
}
}
class User implements Comparable {
String name;
int age;
public User(String name, int age) {
this.name = name;
this.age = age;
}
public int compareTo(Object o){
//以年龄为排序
// int s1 = this.age;
// int s2 = ((User)o).age;
// return s1-s2;
//以姓名为排序
String name1=this.name;
String name2=((User)o).name;
return name1.compareTo(name2);
}
public String toString(){
return "姓名是:"+name+",年龄是:"+age+"。";
}
}
165_集合_SortedSet集合详解_02_实现Comparable接口
最新推荐文章于 2025-08-11 10:37:20 发布
本文通过一个具体的Java示例展示了如何使用TreeSet进行对象的排序。示例中定义了一个User类,并实现了Comparable接口来定制排序规则,最终通过TreeSet实现了按用户姓名的字母顺序排序。
374

被折叠的 条评论
为什么被折叠?



