Java集合框架讀書筆記(六)

2021-09-09 08:47:27 字數 948 閱讀 1000

層次關係

collection介面是集合類的根介面。他下面是兩個直接實現的介面,set和list,set中不能包含重複元素,list是乙個有序的集合,可以包含重複元素,可以按索引訪問。

map是單獨的乙個介面,和collection沒有關係。是以key-value形式儲存資料的。

幾種介面和類的特點。

1.list(有序,可重複),根據索引查詢,刪除和插入資料會使後面資料移動,插入和刪除相對速度較慢。

2.set(無序,不能重複)

set裡存放的物件是無序,不能重複的,集合中的物件不按特定的方式排序。

3.map(鍵值對,鍵唯一)

arraylist和linkedlist

兩個集合在用法上沒有區別,但是在功能上還是有區別的。linkedlist常用在增刪較多而查詢較少的情況下。arraylist則相反。

map集合的實現類。

hashmap根據鍵的hashcode值儲存資料,根據鍵可以獲得值,具有很快的訪問速度。只允許乙個鍵為null。鍊錶和紅黑樹。

hashtable是hashmap的執行緒安全版本,效率比較低,而且不允許記錄的鍵或者值為null。

concurrenthashmap。執行緒安全的,鎖分離。內部使用segment來表示不同的部分,每個段都擁有自己的鎖,只要多個修改不發生在同一段上,就可以進行併發。

linkedhashmap儲存了記錄插入的順序,和hashmap的特點相同。

treemap實現自sortmap介面,能夠把儲存的記錄按自然順序或者指定的比較器排列,也是非同步的。

hashmap和treemap

hashmap通過hashcode對其內容進行快速查詢,而treemap中所有元素都保持著某種固定的順序,如果你想得到有序的結果那就應該使用treemap。

讀書筆記六

最後,作為一名程式設計人員,最重要的就是創新。學習新技術 我們不能只沉浸在自己已經學會的技術裡,我們要敢於面對新的技術。不要因為對於新技術的不理解而排斥它。我們要勇敢的接受它 不懼怕老 我並不認為所有的老 都應該立刻替換掉 刪掉。在如今的軟體中,有很多穩固的 良好設計的程式 它們對是很好的學習教材。...

fluent Python 六)讀書筆記

這周由於期末考的壓力,讀書的進度暫時拖緩了一會。主要講講函式這一節學到的東西吧,因為字串那一節感覺自己只學了一些概念。首先是一等物件的定義 1.在執行時建立 2.能賦值給變數或者資料結構中的元素 3.能作為引數傳給函式 4.能作為函式的返回結果 函式就是一等物件,也就是說上面所有的點它都能做得到。5...

Head First Python 讀書筆記(六)

class dog 建立了狗類 def init self,name str,age int none 初始化屬性name和age self.name name self.age age defsit self none 模擬小狗蹲下 print self.name.title is now sit...