Set, Map是怎样判断插入的数据是否存在重复呢?
第1步. 先判断hashCode是否相同,如果不相同则说明元素不重复;
第2步. 如果hashCode相同,就比较equals,equals相同说明元素重复;
第3步. equals也不相同,表示元素不重复。
即:a.hasCode()==b.hasCode() && a.equal(b)
Set, Map是怎样判断插入的数据是否存在重复呢?
第1步. 先判断hashCode是否相同,如果不相同则说明元素不重复;
第2步. 如果hashCode相同,就比较equals,equals相同说明元素重复;
第3步. equals也不相同,表示元素不重复。
即:a.hasCode()==b.hasCode() && a.equal(b)
转载于:https://my.oschina.net/scriptboy/blog/85807