黑马程序员技术交流社区
标题:
集合框架中的HashSet
[打印本页]
作者:
骑着乌龟去旅行
时间:
2014-11-30 22:02
标题:
集合框架中的HashSet
我知道Set是一个无序不可重复的集合
可我不知道HashSet底层是什么的结构,它的equals()方法和HashCode()方法到底有什么作用呢
会不会是这俩个方法才保证了Set集合不可重复的
作者:
骑着乌龟去旅行
时间:
2014-11-30 22:38
没人在嘛哎。。。。。。
作者:
迷失的小Z
时间:
2014-11-30 22:49
底层是哈希表
作者:
陈国华
时间:
2014-11-30 23:00
就我的理解说说吧
HashSet底层是哈希表,容器里的对象在你创建的时候就会通过一些算法赋给哈希值,HashSet如果要判断元素是否重复首先会判断元素对应的哈希值,如果不相等则视为不同的元素,如果相等的话会通过equals方法来继续比较;而这个equals方法你也可以自己来复写,也就是可以通过复写equals方法来自定义的判断集合中的元素是否重复。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2