黑马程序员技术交流社区

标题: TreeSet排序问题, [打印本页]

作者: 王九日    时间: 2013-4-24 21:53
标题: TreeSet排序问题,
本帖最后由 王九日 于 2013-4-24 22:52 编辑

TreeSet排序两种方式第一种是让元素自身具备比较性,实现Comparable接口,复写compareTo方法,第二种是当元素自身不具备比较性时或者具备比较性不是所以要的这时就需要让集合自身具备比较性,实现Comparator,覆盖compare方法。   元素的比较性不明白,大神详细解释下,元素的比较性是指什么
作者: wangyougu010    时间: 2013-4-24 22:03
说比较性显得太专业,这么说吧,用TreeSet存储元素,一种是按照默认的顺序排序,一种是指定比较器,所谓默认顺序,比如说存储的是int型,那么默认顺序就是1,2,3这样的,如果存储的是字符型,默认顺序就是,a,b,c.也就说,如果是存储现有的类,是按照类对象的默认顺序排序,那么存储我们自己定义的对象呢?比如存入Person类,其中有属性学号id
,姓名name?按照什么顺序排序?这个时候就需要我们重写compareTo方法来指定想要按照哪个属性来作为默认排序.
作者: 王九日    时间: 2013-4-24 22:50
wangyougu010 发表于 2013-4-24 22:03
说比较性显得太专业,这么说吧,用TreeSet存储元素,一种是按照默认的顺序排序,一种是指定比较器,所谓默认顺序 ...

昂 知道啦 谢谢啦




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