黑马程序员技术交流社区
标题:
关于集合中去元素重复性的底层原理?
[打印本页]
作者:
collection
时间:
2015-5-17 10:00
标题:
关于集合中去元素重复性的底层原理?
关于集合中去元素重复性的底层原理?
作者:
zouzouzou
时间:
2015-5-17 10:00
先通过判断元素的哈希值,元素的哈希值hashCode()一致了,这时会再次判断元素的内容是相同(equals())
如果equals返回true,意味着元素相同,不存!
如果equals返回false,意味着两个元素不相同,存储,继续通过算法算出位置。拉链法!
所以存储在set接口容器中存储元素时,该元素必须要有哈希算法和equals方法。而且需要重写Object类中的方法。元素在add时,必须先执行元素的哈希算法,如果哈希值不一样,在使用元素的equals方法判断内容。
作者:
791008594
时间:
2015-5-18 01:20
主要这两个方法重写一些就好了hashCode()和equals()
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2