關於Java中的集合部分
阿新 • • 發佈:2021-10-03
關於Java中的集合
集合的定義:集合指的是儲存物件的引用的類/介面。由於集合中元素(物件)的儲存方式不
同,所以每一種集合都代表一種資料結構。
集合的繼承結構圖
-
Iterablee介面(可迭代的,其中有一個iterator()方法用於獲取迭代器物件)
-
Collection介面
-
List介面(有序:集合中的元素有下標,可重複:存入集合中的元素可以相同)
-
ArrayList實現類(非執行緒安全,底層資料結構為陣列)
-
ArrayList集合可以自動擴容。擴容至原來的1.5倍。預設初始化容量是10
-
陣列的優點:隨即增刪效率低,並且陣列無法儲存大容量的資料,因為很難找到一個連續的大容量空間。
-
優點:向陣列末尾新增元素效率較高,查詢元素效率較高(原因:陣列儲存的每個元素所佔記憶體空間大小相同,並且陣列的記憶體地址是連續的,一次通過數學表示式即可計算出陣列中某個元素的下標)
-
-
-
Vector實現類(執行緒安全的,但是效率低 ,因此不常用。底層資料結構為陣列,)
-
-
Set介面(無序:集合中的元素沒有下標,因此存入該集合中的元素和取出時的元素不一定相同。不可重複:存入該集合中的元素不可以重複)
-
HashSet實現類(底層資料結構為:雜湊表)
-
SortedSet介面(無序不可重複,可排序)
-
TreeSet實現類(底層資料結構為二叉樹)
-
-
-
-
-
Map介面(以鍵值對的方式儲存物件的引用,Map集合的key部分儲存的就是Set集合中的元素)
-
HashMap介面
-
Hashtable實現類(執行緒安全,但效率低)
-
Properties實現類(鍵值對必須都是以字串的形式存在)
-
-
SortedMap介面(可排序的)
-
TreeMap實現類(底層資料結構為二叉樹)
-
-