集合框架 Collection

2021-06-29 15:53:33 字數 2413 閱讀 5976

collection是集合框架體系中的根介面,它有兩個常用的子介面,別是list和set

list:有序(儲存順序和取出順序一致),可重複。

實現了list介面的子類以及這些子類的區別:

arraylist:底層資料結構是陣列,查詢快,增刪慢。執行緒不安全,效率高。

vector:底層資料結構是陣列,查詢快,增刪慢。執行緒安全,效率低

linkedlist:底層資料結構是鍊錶,查詢慢,增刪快。執行緒不安全,效率高。

set:無序(儲存資料與取出順序不一致),資料唯一

實現了set介面的子類物件以及這些子類的區別:

hashset:底層資料結構是雜湊表(是乙個元素為鍊錶的陣列),:雜湊表底層依賴兩個方法:hashcode()和equals()保證元素的唯一性

treeset:底層資料結構是紅黑樹(是乙個自平衡的二叉樹),能對儲存的元素自動排序,排序的方式有兩種:1,自然排序,讓元素自身具備比較性,不如讓元素所屬的類實現comparable介面;2,比較器排序,讓集合具備比較性,讓集合的構造方法接收comparator的實現類物件

collection是根介面,裡面定義的功能屬於共性功能:

1,新增功能

boolean add(object o):新增乙個元素

boolean addall(collection c);新增乙個集合的元素

2,刪除功能

void chear();移除所有的元素

boolean remove(object o);移除乙個元素

boolean removeall(collection c);移除乙個集合的元素

3,判斷功能

boolean contains(object o);判斷集合中是否包含指定的元素

boolean containsall(collection c);判斷集合中是否包含指定的元素

boolean isempty();判斷集合否為空

4,獲取功能

iteratoriterator()

5,長度功能

int size();獲取元素個數

6,交集功能

boolean retainall(collection c);兩個集合是否有相同的元素

iterator iterator() 迭代器:

集合中專用的遍歷方式

iterator功能:

object next();獲取下乙個元素,並移動到下乙個位置

boolean hasnext();如果仍有元素可以迭代,就然會true,否則返回false

以arraylist演示list體系裡的基本功能:

public static void main(string args) 

// 使用listiterator迭代器遍歷,並新增元素,和刪除元素

listiteratorlit = array.listiterator();

while (lit.hasnext())

// 取交集,哪個集合呼叫retainall方法,交集就存在哪個集合,返回值表示此集合是否改變過

system.out

.println("retainall=" + array.retainall(arry1));

// 把集合轉為陣列

object s = array.toarray();

system.out

.println(array);

//刪除功能

system.out

.println("remove="+array.remove("hello"));//移除乙個元素

system.out

.println("removeall="+arry1.removeall(array));

//只要有乙個元素被刪除就返回true

}

vector的特點:底層資料結構是陣列,查詢快,增刪慢,執行緒安全,效率低

特有功能:

a:新增

public void addelement(e obj) – add()

b:獲取

public e elementat(int index) – get()

public enumeration elements() – iterator()

linkedlist的特點:底層資料結構是鍊錶,查詢慢,增刪快,執行緒不安全,效率高

特有功能:

a:新增

addfirst()

addlast()

b:刪除

removefirst()

removelast()

c:獲取

getfirst()

getlast()

集合框架Collection

collection集合用於儲存物件,長度是可變的,共有的方法有 增 add 刪 remove 獲取 size 判斷 contains,isempetylist 集合是 有順序,可以重複,其中特有的方法有 獲取 get sublist listiterator 改 set arraylist 底層是...

Collection 集合框架小結

1 collection 介面 主要包括 list 介面與set 介面 這兩個介面是我們比較常用的,用來對單個物件進行操作的 1.list介面,適合遍歷與排序,不適合插入與刪除操作。是有序的,允許有重複元素,允許有null值。它主要的實現類有 1 arraylist 此資料結構是基於動態陣列來實現的...

Java之集合框架Collection

一 集合框架概述 1 集合類的出現 物件導向語言對事物的體現的體現都是以物件的形式,所以為了方便對多個物件的操作,就對物件進行儲存,集合就是儲存物件最常用的一種方式。2 陣列與集合的異同 陣列和集合同是容器,陣列既能儲存基本資料型別,也能儲存物件,集合只能儲存物件,陣列的長度是固定的,集合的長度是可...