集合框架源碼分析(jdK1.7)(十) 集合框架對比總結

oracle java tutorial官方文檔

鏈接是:https://docs.oracle.com/javase/tutorial/collections/index.html

 

1.核心集合接口層次關係


同類對比

Map系列

名稱

特點

數據結構

初始容量(默認)

擴容方式

HashMap

鍵值對,存Null值

散列表

16

容量使用75%(負載因子)

擴大1倍

HashTable

1.所有方法有sychronized修飾,線程安全

2.鍵值對,不可存放null值

散列表

11

容量使用75%(負載因子)

擴大1倍

TreeMap

鍵值對,不可存放null值

紅黑樹(平衡二叉樹)

 

LIst系列

名稱

特點

數據結構

初始容量(默認)

擴容方式

ArrayList

查詢速度快

數組

10

每次新增都會檢查容量,容量不足擴大50%

LinkList

插入刪除速度快

雙向鏈表

Vector

所有方法有sychronized修飾,線程安全(不考率線程安全不可建議使用,存在開銷

數組

10

擴大原來的1倍

 

Set

名稱

特點

數據結構

初始容量(默認)

擴容方式

HashSet

無重複結果且結果無需

散列表(HashMap<E,Object>)

16

容量使用75%(負載因子)

擴大1倍

TreeSet

無重複結果且結果有序

紅黑樹

(NavigableMap<E,Object>)

 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章