繁体   English   中英

哈希集如何避免重复

[英]How Hashset avoids duplicates

HashSet内部调用HashMap以避免实现中的重复

  public HashSet() {
    map = new HashMap<E,Object>();
    }

public boolean add(E e) { 
return map.put(e, PRESENT)==null;
}

例如

码:

Set hashSet = new HashSet();
hashSet.add("Abraham");
hashSet.add("Billy");       
hashSet.add("Billy");       
System.out.println("HashSet Value " +hashSet.toString());

输出:

HashSet Value [Billy, Abraham]

Map界面中,每个键也是唯一的( java docs ):

将键映射到值的对象。 映射不能包含重复的键 每个键最多可以映射到一个值。

这意味着HashMap已经在避免避免重复的键,这是HashSet的元素

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM