黑马程序员技术交流社区
标题:
TreeSet集合存储自定义对象,按照年龄从小到大排序
[打印本页]
作者:
孙广浩
时间:
2015-11-13 12:43
标题:
TreeSet集合存储自定义对象,按照年龄从小到大排序
public static void main(String[] args) {
// 用TreeSet集合储存自定义对象,实现按照年龄从小到大排序,使用TreeSet的带参构造(比较器接口的方式实现)\
TreeSet<Person>ts = new TreeSet<>(new Comparator<Person>() {
@Override
public int compare(Person p1, Person p2) {
int num = p1.getAge()-p2.getAge();
return num == 0? p1.getName().compareTo(p2.getName()) : num;
}
});
Person p1 = new Person ("周立波",20);
Person p2 = new Person ("李咏",23);
Person p3 = new Person ("包租公",30);
Person p4 = new Person ("包租婆",50);
ts.add(p1);
ts.add(p2);
ts.add(p3);
ts.add(p4);
for (Person p : ts) {
System.out.println(p.getName() + "..." + p.getAge());
}
}
复制代码
作者:
孙志明
时间:
2015-11-13 13:01
学到了
作者:
WosLovesLife
时间:
2015-11-13 14:54
用过内部类实现compare方法比较成员年龄,如果年龄相同比较姓名。返回比较后的结果,大于0升序,小于0降序。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2