黑马程序员技术交流社区

标题: TreeSetComparator第二种排序方式 [打印本页]

作者: itheima_llt    时间: 2015-4-15 17:13
标题: TreeSetComparator第二种排序方式
本帖最后由 itheima_llt 于 2015-4-15 17:42 编辑

当元素不具备可比性或者元素所具备的可比性不是所需要的时,
那该怎么办呢???
修改代码是一件很痛苦的事情!
我们应当避免这种痛苦!
这就引出了TreeSet的第二种排序方式:
让集合具备可比性。

那么该怎么做才能让集合具备可比性呢???
答案是构造比较器Comparator,
并将comparator对象作为参数传递给TreeSet构造函数,
由于Comparator是接口,要创建类实现该接口,
并且重写compare(o1,o2)方法!
下面对此进行演示:
运行结果:
Jone----15
Jordan----16
Jack----20
Jimmy----20
Jane----21
Tom----26


这与第一种排序方式运行结果一致,
说明已经成功的对学生对象进行了去重存入,
并自动排序成功!

小结:如果两种排序方式都存在,要以比较器为主,
因为这样修改起来方便!








欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2