A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 任亚俊 中级黑马   /  2013-12-26 16:42  /  3735 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

TreeSet我用的很少,不知道大家用的多不多,我用的多的是ArrayList和HashMap。
1.能不能给我举个TreeSet的应用示例?
2.TreeSet如何保证元素的唯一性呢?
3.TreeSet是怎样利用二叉树这种数据结构的?

评分

参与人数 1技术分 +1 收起 理由
乔兵 + 1

查看全部评分

3 个回复

倒序浏览
TreeSet保证元素唯一性的依据:用compareto这个方法来验证来验证两个元素是否相同,返回值为零表示两数相同,不存,返回正数,表示新来的元素大于已有的元素,返回负数,表示小于已有的元素。
TreeSet有两种排序方式:
第一种:让元素自身具备比较性。元素需要实现Comparable接口,覆盖compareTo方法,这种排序的结果是元素的自然顺序。
第二种:出现第二种方式的原因是:元素自身不具备比较性或者具备的比较性不是所需求的,这是可以让集合自身具备比较性。

评分

参与人数 1技术分 +1 收起 理由
乔兵 + 1

查看全部评分

回复 使用道具 举报
其实这样说你就明白了
HashSet是通过HashMap实现的,TreeSet是通过TreeMap实现的。
他们把Map中的Key作为一类元素归结起来,而Map的Key是唯一的。

评分

参与人数 1技术分 +1 收起 理由
乔兵 + 1

查看全部评分

回复 使用道具 举报
赞一个!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马