Java集合之Hashtable原始碼分析

2021-09-21 14:56:04 字數 576 閱讀 7211

hashtable也是基於雜湊表實現的, 與map相似, 不過hashtable是執行緒安全的, hashtable不允許 key或value為null.

hashtable的資料結構和hashmap一樣, 採用 陣列加鍊表的方式實現.

幾個成員變數與hashmap一樣:

hashtable的方法與hashmap基本一樣, 只是 hashtable方法加上了 synchronized 關鍵字, 保證hashtable是執行緒安全的.

主要說說hashtable與hashmap的不同:

hashtable不允許 null key和null value, hashmap允許

hashtable是執行緒安全的, hashmap執行緒不安全

hashtable繼承自dictionary, hashmap繼承自abstractmap

collections 類中存在乙個靜態方法:synchronizedmap(),該方法建立了乙個執行緒安全的 map 物件,並把它作為乙個封裝的物件來返回。

Java之集合總結

1 集合 自己補齊 collection 單列集合 list 有序,可重複 arraylist 底層資料結構是陣列,查詢快,增刪慢 執行緒不安全,效率高 vector 底層資料結構是陣列,查詢快,增刪慢 執行緒安全,效率低 linkedlist 底層資料結構是鍊錶,查詢慢,增刪快 執行緒不安全,效率...

java基礎之集合

1.collectiton 單列儲存集合 list 元素是有序的,元素可以重複。因為該集合體系有索引 arraylist 底層的資料結構使用的是陣列結構 特點 陣列元素查詢很快,但是增刪很慢,因為增刪乙個元素,陣列後面的其他元素都需要變動,執行緒不同步 linklist 底層的資料結構使用的是鍊錶資...

java基礎之集合

集合的型別與各自的特性 collection 單列集合 list 有儲存順序,可重複 arraylist 陣列實現,查詢快,增刪慢由於是陣列實現,在增和刪的時候會牽扯到陣列增容,以及拷貝元素,所以慢。陣列是可以直接按索引查詢,所以查詢時較快。linkedlist 鍊錶實現,增刪快,查詢慢由於鍊錶實現...