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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 暗影流光 中级黑马   /  2014-7-9 19:57  /  1122 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 暗影流光 于 2014-7-9 19:59 编辑

HashSet:
哈希表确定元素是否相同:
1)判断的是两个元素的哈希值是否相同,如果相同,再判断两个对象的内容是否相同。
2)判断哈希值是否相同用的是对象的hashCode方法,判断两个对象的内容是否相同,用的是equals方法。
哈希冲突:哈希值相同,但是内容不同,解决方法时串联或者顺延。
TreeSet:
可以对集合中的元素进行自然排序。
在TreeSet中,判断元素唯一性的方法是,根据compare比较方法,返回结果是0,则元素相同,不存。
TreeSet对元素进行排序的方式一:
让元素自身具备比较功能,元素需要实现comparable类,覆盖compareTo方法;
TreeSet对元素进行排序的方式二:
让集合自身具备比较功能,通过comparator比较器,在集合对象创建过程中传入一个自定义比较器。
定义一个类实现comparator接口,覆盖compare方法,将该类对象作为参数传递给TreeSet集合的构造方法。

1 个回复

倒序浏览
感觉set比list难好多,源码都看不懂,还好开发中几乎不用它
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马