当谈到添加HashSet的方法时,我遇到了一些问题。即使在阅读了它的源代码here之后,我也真的不明白发生了什么。
该方法究竟是做什么用的?在调用hashCode和equals方面采取的操作顺序是什么?
答案 0 :(得分:1)
HashSet
只是HashMap
,其值为Object
所以add
只是将元素添加到支持hashmap。向hashmap添加元素意味着使用hashCode来确定应该放置的位置。 equals
用于确定我们尝试添加的密钥是否已经存在,然后该值应该更新