黑马程序员技术交流社区

标题: TreeSet [打印本页]

作者: Echo0912    时间: 2015-9-13 22:25
标题: TreeSet
对元素进行排序的。
               
                自然排序:
                        让基本类(要排序的类)去实现Comparable接口,并且重写接口中的compareTo()方法。
                        注意:
                                当compareTo()方法返回0的时候,集合中只有一个元素。
                                当compareTo()方法返回正数的时候,怎么存就怎么取。
                                当compareTo()方法返回负数的时候,倒序存储。

                        二叉树取元素的顺序是什么:左,中,右。

                        注意:
                                用TreeSet排序的时候,一定要考虑清楚什么是主要条件,什么是次要条件。

                                思考:
                                        按照姓名排序。(采用的是Unicode编码表中的值)
                                                //this.name.compareTo(s.name);

                                        如果是按照 姓名的长度 排序呢?
                                                //this.name.length() - s.name.length();
                                                //内容,年龄

                比较器排序:
                        使用的是 TreeSet(Comparator comparator);  TreeSet类的带参构造。
                        做法:
                                1、新建一个类,去实现Comparator接口,重写接口中的compare(),然后创建一个该类对象,传入到 TreeSet类的带参构造中。
                                2、直接使用匿名内部类。 (推荐)




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