1.list是有序集合;map和set是無序集合。
2.list和set是collection介面的子介面;map是乙個介面。
3.list允許有重複物件;set不允許有重複物件;map可以有重複值但是鍵不可重複。
4.list可以有多個null;set最多隻允許有乙個null;map可以有多個null值但最多只有乙個null鍵。
5.list和set是單列資料集合;map是儲存鍵值對的雙列資料集合。
6.list介面實現類
linkedlist
基於鍊錶實現,鍊錶記憶體是雜湊的,增刪快,查詢慢;
arraylist
基於陣列實現,非執行緒安全,效率高,增刪慢,查詢快;
vector
基於陣列實現,執行緒安全,效率低,增刪慢,查詢慢;
7.map介面實現類
hashmap
基於 hash 表的 map 介面實現,非執行緒安全,高效,支援 null 值和 null
鍵; hashtable
執行緒安全,低效,不支援 null 值和 null 鍵;
linkedhashmap
是 hashmap 的乙個子類,儲存了記錄的插入順序;
sortmap 介面
treemap,能夠把它儲存的記錄根據鍵排序,預設是鍵值的公升序排序
8.set介面實現類
hashset
底層是由 hash map 實現,不允許集合中有重複的值,使用該方式時需要重寫 equals()和 hash code()方法;
linkedhashset
繼承於 hashset,同時又基於 linkedhashmap 來進行實現,底層使用的是 linkedhashmap
Java三大集合 1
一.set集合 1.hashset集合,linkedhashset集合 test public void test01 2.treeset集合 test public void test02 treeset2.add new entity 1 treeset.add 1 treeset.add 2 ...
Java三大集合類總結
1.所有常用集合類特性比較 集合類 常用具體實現類 是否有序 執行緒安全 元素可否為 null 元素是否可重複 操作效率 底層 實現 list arraylist linkedlist vector 都有序,可以使用 get index 方法取值 非安全非安全安全 都允許都可重 查詢快,增刪慢 增刪...
三大集合框架之map
map 是一種把鍵物件和值物件對映的集合,它的每乙個元素都包含一對鍵物件和值物件。map沒有繼承於collection介面 從map集合中檢索元素時,只要給出鍵物件,就會返回對應的值物件。map是乙個介面,例項化map可以採用下面的方式 map的基本操作 這裡以最常用的hashmap為例 新增資料 ...