Java基礎之集合Collection

2021-08-26 05:51:29 字數 1203 閱讀 4256

與陣列區別:

1.陣列是固定長度的,集合是可變長度用來儲存物件資料

2.集合如果不新增泛型就可以儲存不同型別的資料和物件,而陣列一開始就指定了某種型別的

分類:

collection:根據儲存資料的結構不同,進行了分類

|--list有序,因為有索引:arraylist,linkedlist,vector

|--set無序,無索引:hashset,treeset

集合儲存的不是物件實體,而是物件的引用,列印集合列印的是裡面的元素,而陣列打的是引用

collection的共性方法:

remove(xx),clear(),add(xx),contains(xx),a.retainall(b):取交集,a.removeall(b):取差集刪除a中與b一樣的元素

iterator迭代器:是每個集合應該自己實現的,因為根據各自的資料儲存結構,要各自實現取得方式,所以定義乙個內部類實現這個介面,然後訪問自己的資料

arraylist內部實際是乙個object陣列在操作

list框架下的特有方法:

凡是可以操作index的方法都是list特有的,因為list是有索引的:操作的都是index對應的位置

新增:add(index,element),addall(index,collection)

刪除:remove(index)

修改:set(index,element)

查詢:get(index)

遍歷:fori和listiterator()

當使用iterator()的時候:集合本身物件不能使用刪除和新增:remove和add方法,可以使用set方法修改元素,集合中的元素如果是引用型別的,引用型別本身是可以使用自己的方法的

如果使用了remove或者add那麼會報:concurrentmodificationexception

而iterator的三個方法都可以正常使用,hasenext,next和remove(刪除的是集合中的元素)

對於list集合而言可以使用listiterator()方法獲取到listiterator迭代器,它可以在遍歷過程中使用增刪改查功能:add(xx),remove(),set(xx),next()

java基礎之集合

1.collectiton 單列儲存集合 list 元素是有序的,元素可以重複。因為該集合體系有索引 arraylist 底層的資料結構使用的是陣列結構 特點 陣列元素查詢很快,但是增刪很慢,因為增刪乙個元素,陣列後面的其他元素都需要變動,執行緒不同步 linklist 底層的資料結構使用的是鍊錶資...

java基礎之集合

集合的型別與各自的特性 collection 單列集合 list 有儲存順序,可重複 arraylist 陣列實現,查詢快,增刪慢由於是陣列實現,在增和刪的時候會牽扯到陣列增容,以及拷貝元素,所以慢。陣列是可以直接按索引查詢,所以查詢時較快。linkedlist 鍊錶實現,增刪快,查詢慢由於鍊錶實現...

java基礎之集合

集合容器因為內部的資料結構不同,有多種具體容器。不斷的向上抽取,就形成了集合框架。框架的頂層collection介面 collection的常見方法 1.新增 boolean add object obj boolean addall collection coll 2.刪除 boolean rem...