Java学习笔记_22_Set接口的实现类(三)

2014-11-23 21:25:44 · 作者: · 浏览: 24
public static void main(String[] args) { // 创建一个LinkedHashSet集合对象 //按年龄有小到大排顺序 Set ts = new TreeSet (new StudentAgeComparator()); //按成绩由小到大排序 //Set ts = new TreeSet (new StudentAgeComparator()); // 生成一些Student对象 Student sd1 = new Student(18, "zxx", 60); Student sd2 = new Student(23, "abc", 85); Student sd3 = new Student(25, "hik", 45); Student sd4 = new Student(25, "hik", 90); Student sd5 = new Student(17, "cde", 33); // 向集合对象中添加Student对象 ts.add(sd1); ts.add(sd2); ts.add(sd3); ts.add(sd4); ts.add(sd5); // 生成一个迭代器 Iterator it = ts.iterator(); // 输出字符串 while (it.hasNext()) { System.out.println(it.next()); } } }

当选用Set ts = new TreeSet (new StudentAgeComparator());时。

输出结果:

name :cde age :17 score :33

name :zxx age :18 score :60

name :abc age :23 score :85

name :hik age :25 score :45

很明显是按年龄由小到大排序的。

当选用Set ts = new TreeSet (new StudentScoreComparator());时。

输出结果:

name :cde age :17 score :33

name :zxx age :18 score :60

name :abc age :23 score :85

name :hik age :25 score :45

很明显是按成绩由小到大排序的。