synchronizedmap本質是對map的操作進行同步,synchronized(map){***},效能一般。concurrencymap是通過分段鎖,本質上是縮小的鎖的同步範圍所以併發數比synchronizedmap提公升了n倍,n為鎖的分段數。
set本質是map,只是set的map的value是乙個啞元。
hashset保證沒有重複元素,可以插入null,hashset底層使用hashmap來儲存所有元素,因為hashset的實現是直接呼叫底層的hashmap的方法來完成。
treeset的底層是treemap,此類保證排序後的set按照公升序排列,根據使用的構造方法的不同,可以自然排序也可以按照定製的規則來排序。
set的add本質是map的add,map的add的原始碼如下:
entryt = root;
if (t == null)
注意到上面正常執行的話會首先進行compare,裡面的compareto原始碼如下:
final int compare(object k1, object k2)
可以看到這個compare是會進行型別強轉的,如果型別不同則有強轉失敗的可能。 集合相關知識點總結
集合 解決 陣列定長 頂層介面 iterator迭代器 collection 單列集合 map 雙列集合 collection 可以存放重複元素的list子介面 arraylist 動態陣列 linkedlist 雙向鍊錶集合 vector 向量 add a 末尾新增 add index,a 向指定...
集合的包含 集合的相關知識點總結
高考對於乙個學生來說很重要,它決定了你能到什麼樣的學校就讀,可能也決定了你以後的就業方向。今天,我給大家分享一下集合相關知識點,明天給大家分享一下集合在高考中常見的題型,以後,我都會採用先分享知識點總結,又分享與前一天知識點相關的高考常見題型。一 集合的含義及其表示 集合的含義 一般的,我們把研究物...
集合 Collection集合總結
list有序,可重複 abstractlist 父類abstractcollection抽象類,實現了list介面 arraylist 父類abstractlist 底層資料結構是陣列,查詢快,增刪慢。執行緒不安全,不同步,效率高 vector 父類abstractlist 底層資料結構是陣列,查詢...