Java中集合list ,set,map用法和區別

2021-09-02 03:53:02 字數 694 閱讀 8220

為什麼使用集合框架,而很少陣列作為儲存結構

1),陣列長度,不能動態擴容,集合框架無需宣告儲存大小,可以動態擴容

2),陣列儲存型別單一,集合框架可以儲存任何型別,加上泛型, 可以避免強制轉換

3),陣列操作方法少,集合框架操作元素方法多,便於管理

常見的集合有:

list集合:arraylist和linkedlist

set集合:hashset 和 treeset

map集合:hashmap 和treemap

1)list集合:有順序的,可以重複的,沒有排序的集合,通過索引訪問

arraylist:是實現基於動態陣列的集合,隨機訪問速度快

linkedlist:基於鍊錶的集合,插入和刪除速度快

2)set集合:沒有順序的,無重複的,每個物件只接受一次。可用於去重複

hashset; 去重複用hashset

treeset: 去重複帶排序用treeset

hashset是基於hash演算法實現的,其效能通常優於treeset,我們通常都應該使用hashset,在我們需要排序的功能時,我們才使用treeset

3)map集合:成對的資料結構,鍵值具有唯一性,否則值被替換

hashmap:用於快速查詢的

treemap:返回的結果是經過排序的,是唯一帶有submap()方法的可以返回乙個子樹

java中集合詳解

一 集合 是一種儲存資料的手段,一次可以儲存多個值 二 補充 短期儲存 rom 一旦計算機關閉,儲存的資料就會消失如 物件,變數,陣列,集合 長期儲存 ram 直接儲存到硬碟上,可以長久的儲存,不會隨著計算機的關閉而消失,如 各種檔案,txt,doc,png,mp4 三 學習集合 1.陣列 可以儲存...

Java中集合框架(1)

幾個重要的介面 1.collection介面 collection介面進行的操作是新增,獲取和刪除集合中的資料。2.list介面 list介面指的就是列表,指的是乙個有序地物件集合,也可以稱為乙個物件序列。list介面繼承自collection介面,該介面的元素是按順序存放的,允許存在相同的元素,每...

Java中集合(三)Stack

棧 先進後出。將元素放入棧中 入棧 壓棧 將元素從棧中取出 出棧 彈棧。最先放入 棧中的元素 棧底元素 最後放入棧中的元素 棧定元素。基於vactor。參考 底層是陣列。記憶體空間連續,查詢較快,增刪較慢。push 向棧中新增乙個元素 入棧 pop 移除棧頂元素 出棧 peek 獲取棧頂元素但不移除...