Ty集合相關筆記

2021-10-11 09:00:40 字數 1039 閱讀 3114

集合可分為collection和map兩種體系

map:雙列資料儲存具有對映關係k-v的集合

arraylist

jdk8中:

小結:jdk7中arraylist物件的建立類似於單例模式的餓漢式,8中類似於懶漢式,延遲了陣列的建立時間,節省記憶體

linkedlist

vector

無序性:不是插入順序,也不是比較順序,而是指儲存的資料在底層陣列中並不是按照陣列索引順序新增的,而是根據hash值進行新增的

不可重複:保證新增的元素按照equals判斷時,不能反會true

新增元素的過程:

底層詳見hashmap

linkedhashset

底層詳見linkedhashmap

treeset

底層詳見treemap

還有乙個currenthashmap,涉及多執行緒訪問map時的安全問題,後面會提及

hashmap的底層:jdk7及之前,使用陣列+鍊錶;jdk8,使用陣列+鍊錶+紅黑樹

學習集合框架中多執行緒相關的集合 筆記

priorityblockingqueue 這是乙個無界的阻塞佇列,使用和priorityqueue 一樣的排序規則,並且提供阻塞檢索元素操作。雖然說這個佇列在邏輯上是無界的,但是它可能會因為資源耗盡導致記憶體溢位錯誤。這個佇列也不允許出現null值元素。乙個具有優先順序的阻塞佇列依賴於compar...

集合相關總結

synchronizedmap本質是對map的操作進行同步,synchronized map 效能一般。concurrencymap是通過分段鎖,本質上是縮小的鎖的同步範圍所以併發數比synchronizedmap提公升了n倍,n為鎖的分段數。set本質是map,只是set的map的value是乙個...

筆記 HTML5中input元素新增的type值

在html5中,input元素的type值增加了不少,使input的功能強大了很多。但在各大瀏覽器中並不是所有的type值都支援。以下是比較有用 並且瀏覽器支援的稍好一些的值 type color顏色 type date日期 不包括時間 min 最小值 max 最大值 type number數字 m...