集合和陣列

2021-09-24 20:30:47 字數 870 閱讀 7982

資料多了用物件存,物件多了用集合存

1,陣列是固定長度的,集合是可變長度的

2,陣列建立時就已經確定其儲存的型別了,而集合可以存object(不同型別的物件)

collection 下面常用的有list和set

list常用的有arraylist linkedlist vector

set常用的有hashset treeset 

為什麼會出現這麼多的容器的呢?

因為沒乙個容器對資料的儲存方式都有不同,這個儲存方式稱之為:資料結構(資料在記憶體中存放的形式)

集合和陣列的引用變數中存放的都是物件位址.

什麼是迭代器?迭代器就是取出元素的方式

畢老師比喻: 

娃娃機就是集合,就是容器,裡面都有夾子(每個集合中的內部類),他們會實現迭代器介面(抽象夾子的作用形成的介面).

每個娃娃機(容器)的夾子(迭代器介面的實現類)可能具體形式不一樣(hasnext(),next(),remove()其中的方法實現可能不一樣),

但是作用和功能都是一樣的(hasnext(),next(),remove()判斷和取出和移除),

而且外界都是使用操縱桿(iterator()方法返回子類物件)操作夾子取出元素.

for(iterator it:al.iterator();it.hasnext();){

it.next();

for迴圈比while迴圈好在 iterator it:al.iterator() 此時是區域性的,for迴圈結束後就沒了,而while迴圈需要等待**站自動**

list  可重複 有順序 其中有索引

因為有索引,所以它可以用for迴圈遍歷獲得其中各個元素

列表迭代器 listiterator

set 不可重複 無序

集合和陣列的區別!

以下為jdk1.6中arraylist中的建構函式原始碼。public arraylist int initialcapacity constructs an empty list with an initial capacity of ten.public arraylist 可以看出在建立arr...

C 學習 集合和陣列

陣列和集合在某種意義上講很相似,都是可以對於大量資料進行處理。從例子感受一下集合和陣列的功能。public static void sumarray 定義5個數。int sum 0 初始為0 for int i 0 i numbers.length i 迴圈實現每個數之間的加和 console.wr...

瘋狂輸出 集合 和陣列

1為什麼要創造出集合 a.因為陣列只能儲存相同資料型別的資料.引用資料型別,和基本資料型別 b.陣列一旦給定了長度 就不能修改陣列的長度了。2.集合的作用 a.集合中只能儲存引用資料型別 通過自動裝箱和自動拆箱也可以儲存基本資料型別 自動裝箱不可以改變null值 b.陣列陣列找一旦給定了長度 集合還...