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