1.HashMap是基於Key-Value (JDK7:數組+鏈表,JDK8:數組+鏈表+紅黑樹)的哈希表,用zipper方法實現。壹般用於單線程,非線程安全,HashMap鍵是“強鍵”。
2.從抽象類AbstractMap繼承,實現Map接口。遍歷時,得到的數據是完全隨機的。
3.默認容量為16,裝載系數為0.75。
4.最多只能有壹個鍵為空,多個值可以為空。
5.HashMap實現了Cloneable和Serializable接口,而WeakHashMap沒有。
1).HashMap實現Cloneable,表示可以通過clone()克隆自身。
2).HashMap實現了Serializable,這意味著它支持序列化,並且可以通過序列化進行傳輸。
6.添加和刪除操作的時間復雜度為O(1)。
二。weakHashMap
1.weakHashMap是壹個基於鍵值的哈希表(數組+鏈表),用zipper方法實現。壹般用於單線程,非線程安全,weakHashMap中的密鑰是“弱密鑰”。
註意:當GC接受壹個“弱密鑰”時,它對應的密鑰值也將從weakHashMap中刪除。
2.從抽象類AbstractMap繼承,實現Map接口。
3.默認容量為16,裝載系數為0.75。
4.最多只能有壹個鍵為空,多個值可以為空。