Java集合框架彙總以及比較

2021-08-29 22:52:24 字數 727 閱讀 9362

collection

* list(訪問有序,有索引,可以重複)

* arraylist

* 底層是陣列實現的,執行緒不安全,查詢和修改快,增和刪比較慢

* linkedlist

* 底層是鍊錶實現的,執行緒不安全,增和刪比較快,查詢和修改比較慢

* vector

* 底層是陣列實現的,執行緒安全的,無論增刪改查都慢

* 如果查詢和修改多,用arraylist

* 如果增和刪多,用linkedlist

* 如果都多,用arraylist

* set(訪問無序,無索引,不可以重複)

* hashset

* 底層是雜湊演算法實現

* linkedhashset

* 底層是鍊錶實現,但是也是可以保證元素唯一,和hashset原理一樣

* treeset

* 底層是二叉樹演算法實現

* 一般在開發的時候不需要對儲存的元素排序,所以在開發的時候大多用hashset,hashset的效率比較高

* treeset在面試的時候比較多,問你有幾種排序方式,和幾種排序方式的區別

* map

* hashmap

* 底層是雜湊演算法,針對鍵

* linkedhashmap

* 底層是鍊錶,針對鍵

* treemap

* 底層是二叉樹演算法,針對鍵

* 開發中用hashmap比較多

java 集合框架的比較

hashmap treemap hashtable 1 hashmap也用到了雜湊碼的演算法,以便快速查詢乙個鍵,treemap則是對鍵按序存放,因此它有一些擴充套件的方法,比如 firstkey lastkey 等。2 hashtable 不允許空 null 鍵 key 或值 value hash...

java 集合比較

collection 單列集合 list 有序,可重複 arraylist 底層資料結構是陣列,查詢快,增刪慢 執行緒不安全,效率高 vector 底層資料結構是陣列,查詢快,增刪慢 執行緒安全,效率低 linkedlist 底層資料結構是鍊錶,查詢慢,增刪快 執行緒不安全,效率高 set 無序,唯...

JAVA集合比較

arraylist 資料結構 優點 get和set呼叫花費常數時間,也就是用arraylist去查詢資料的速度快,一般來說專案開發都會用 arraylist去查詢資料。缺點 但是在新項的刪除,插入 增加 速度較慢 linklist 鍊錶結構 優點 對於增加和刪除開銷很小,也就是說在處理增加和刪除時速...