簡體   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