1. 程式人生 > >集合框架原始碼分析(jdK1.7)(十) 集合框架對比總結

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

oracle java tutorial官方文件

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>)