java基礎 4 集合的理解

2021-09-10 18:54:21 字數 635 閱讀 7465

只是我的理解

1.集合出現是因為 陣列在解決變長問題上不喜人。

2.集合相當於乙個有彈性的容器

1.陣列是定長的,集合可以初始化長度,但會自動擴容。

2.陣列存放什麼型別的值在一開始就要確定下來,而集合可以 泛型 固定型別,可以 不填 接收 任何型別

3.陣列可以存放基本資料型別,而集合只能存放object,在1.5之後新加入了拆/裝 箱功能,插入int自動轉成integer型別

4.迴圈的方式也有所差異,陣列通過index 確定值,而集合,通過迭代器iterator迴圈元素

裡面的list 和set 都是實現了這個介面,那這個介面都定義了些什麼方法呢??

看到隔壁有一張圖歸納的也蠻具體了,文化人就借來用用,出處:

補充:

2019/02/13:在我試驗list set map 的各種迴圈中看到hashset的迭代器內部走的是hashmap 的keyset 迭代器方式

scala基礎4 集合

map set list 集合 可變集合可以在適當的地方被更新或擴充套件,意味著你可以修改 新增 移除乙個集合的元素。而不可變集合類,相比之下,永遠不會改變。不過,你仍然可以模擬新增,移除或更新操作。但是這些操作都將返回乙個新的集合,同時原來的集合不發生改變。不可變的都在immutable裡,可變的...

java基礎 7 集合

基礎 物件導向 語法 異常 常用api 資料型別 io 集合 多執行緒 高併發 1 arraylist 底層資料結構是陣列,查詢快,增刪慢,執行緒不安全,效率高,可以儲存重複元素 2 linkedlist 底層資料結構是鍊錶,查詢慢,增刪快,執行緒不安全,效率高,可以儲存重複元素 3 vector ...

Java基礎 集合2 集合的迭代

2.迭代集合 list for迴圈 從0開始迴圈到length 1,通過索引獲取元素 增強for迴圈 for 型別 變數名 集合 iterator 通過interator 獲取迭代器,呼叫hasnext 和next 來迭代 迭代器 enumeration 只適用於vector,elements 獲取...