哈希集如何不允许重复项?
我正在经历.有人提到addHashSet
如果此集合已包含该元素,则调用将保持该集合不变并返回 false。
但该方法是在内部保存值addHashMap
public boolean add(E e) {
return map.put(e, PRESENT)==null;
}
所述方法putHashMap
将指定值与此映射中的指定键相关联。如果映射以前包含键的映射,则会替换旧值。
那么,如果HashMap的放置方法替换了旧值,那么在出现重复元素的情况下,HashSet add方法如何保持集合不变呢?