當前位置:成語大全網 - 書法字典 - hashset和dictionary的區別

hashset和dictionary的區別

哈希特

HashSet具有以下特征

不能保證元素的排列順序,順序可能會改變。

不同步

集合元素可以為null,但只能放入壹個null。

當壹個元素存儲在HashSet組合中時,HashSet會調用對象的hashCode()方法獲取對象的hashCode值,然後根據hashCode值確定對象在HashSet中的存儲位置。

LinkedHashSet

LinkedHashSet set也根據元素的hashCode值來確定元素的存儲位置,但它也使用鏈表來維護元素的順序。這使得元素看起來是按照插入順序保存的,也就是說,在遍歷集合時,LinkedHashSet將按照添加的順序訪問集合中的元素。

在叠代訪問集合中的所有元素時,LinkedHashSet的性能優於HashSet,但在插入時略遜於hashSet。

TreeSet類

TreeSet是唯壹實現SortedSet接口的類,TreeSet可以確保集合元素處於已排序狀態。TreeSet支持兩種排序方式,自然排序和自定義排序,其中自然排序是默認的排序方式。應該添加到樹集中的是同壹個類的對象。

TreeSet判斷兩個對象不相等的方式是兩個對象通過equals方法返回false,或者通過CompareTo方法比較不返回0。