2014-02-07 89 views
2

作爲每HashSet.java,HashSet中的內部設計使用的HashMapHashSet的實現

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

java的醫生說

此類實現Set接口,由哈希表 備份(實際上是一個HashMap實例)。

大部分的書涉及的HashSet爲通過Java泛型

什麼是哈希表的STRECH的原因「是由哈希表來實現」?爲什麼不使用HashMap?

+5

「散列表」不是指'HashTable'類。http://en.wikipedia.org/wiki/Hash_table – SLaks

回答

4

A hash table是一個抽象的數據結構,可以用許多不同的方式來實現。在Java標準庫中,HashMap就是這樣的一個實現,而HashTable是另一個。文檔中的措辭引用泛型中的散列表。

0

他們試圖解釋的是,HashMap是一個通用結構的Java實現 - 哈希表。並且它實現Set接口,這意味着每個條目都保證是唯一的

相關問題