關於java中list集合類的方法

2021-05-27 20:56:00 字數 3526 閱讀 7973

1、collection

1.1方法

(1) iteratoriterator(); 返回乙個迭代器,用來迭代集合中的元素。

(2) int size();返回存放在集合中的元素的數量。

(3) boolean isempty();判斷當前的集合是否為空,為空的話返回true;

(4) boolean contains(object obj);判斷集合中是否包含乙個與obj相等的物件,相等則返回true;

(5) boolean contains(collection col);判斷當前集合中是否包含乙個與col相等的集合,相等則返回true;

(6) boolean add(object obj);向集合中新增乙個物件obj,成功則返回true;

(7) boolean addall(collection col);將集合col中的所有元素都新增到集合中,成功則返回true;

(8) boolean remove(object obj); 移除集合中與obj相等的元素,有並且成功的話返回true;

(9) boolean removeall(collection col);移除該集合中與col集合相等的所有的元素,有並且成功移除的話返回true;

(10) void clear();移除集合中的所有元素;

(11) boolean retainall(collection col);集合中不與col集合相等的所有元素,有別且成功移除返回true;

(12)  object toarray();返回集合中的物件陣列;

2 iterator

2.1方法

(1)  boolean hasnext();如果存在下乙個元素的話返回true;

(2)  e next();返回下乙個元素;

(3) void remove();移除上乙個被訪問的物件,這個方法必須跟在訪問乙個元素之後執行.

3 list

3.0 (1) 有序列表,允許存放重複的元素。

3.0.1 list方

(1) 繼承collection的所有方法。

(2) listiterator listiterator();返回乙個列表迭代器,用於迭代列表中的所有的元素。

(3) listiterator listiterator(int index);返回乙個列表迭代器,從指定的下標開始。

(4) void add(int index, e element);在指定的位置新增乙個元素。

(5) void addall(int index, collection<? extends e> elements);在指定(末尾)新增乙個元素的集合。

(6) e remove(int index);移除指定位置上的元素並且返回。

(7) e set(int index,e element) ;用新的元素取代指定位置上的元素,並且返回舊的列表。

(8) int indexof(object obj);返回第乙個與obj相等的元素的下標,沒有匹配的則返回-1.

(9) int lastindexof(object obj);返回最後乙個與obj相等的元素的下標,沒有匹配的話則返回-1.

3.0.2 listiterator 方法

(1) void add(e obj);將obj新增到當前元素之前。

(2) void set(e obj);用obj替換next或者previous方法訪問到的那個元素,如果列表在上次條用next或者previous時修改了結構,則會報異常。

(3)  boolean hasnext();正向遍歷列表,如果列表迭代器有多個元素,則返回true。

(4) boolean hasprevious();如果以逆向遍歷列表迭代器,如果迭代器有多個元素,則返回true.

(5) e next();返回列表中的下乙個元素。

(6) e previous();返回列表中的前乙個元素。

(7) int nextindex();返回對next的後續呼叫所返回元素的索引。

(8) int previousindex(); 返回對previous後續呼叫所返回元素的索引。

(9) void remove();從列表中移除由next或者previous返回的最後乙個元素。

3.1 arraylist

3.1.1

(1)  有序列表,允許重複。

(2)   底層的儲存採用陣列,查詢快,增刪慢,執行緒不安全,下標從0開始,輕量級。

(3)   可以動態增長或者縮減索引的序列

3.1.2  方法

(1) 繼承list的所有方法

(2) object clone();返回arraylist例項的淺表副本.

3.2 linkedlist

3.2.1

(1) 有序列表,允許重複、

(2) 底層採用鍊錶的方式實現,增刪快,查詢慢,執行緒不安全、

3.2.2方法

(1) void addfirst(e e);將指定元素插入此列表的開頭、

(2) void addlast(e e);將指定元素插入到此列表的結尾、

(3) e getfist();返回此列表的第乙個元素、

(4) e getlast();返回此列表的最後乙個元素

(5) e removefist();移除並返回列表的第乙個元素

(6) e removelast();移除並且返回列表的最後乙個元素、

(7) object clone();返回此linkedlist的淺表副本

3.3vector

(1) 有序列表,允許重複,執行緒安全

(2) 底層儲存採用陣列,執行緒安全,重量級

4 set

4.0(1) 無序集合,不允許存放重複元素,(treeset 和 sortedset除外,這兩個集合是有序列的)

4.0.1 方法

(1) 繼承collection的所有方法

(2) int hashcode();返回set的雜湊碼值

4.1 hashset

4.1.1

(1)  沒有重複元素的集合

(2)  雜湊表實現的

4.1.2方法

(1)  繼承set中的所有方法

(2) hashset() 構造乙個新的空的set,其實例的預設初始容量為16,載入因子為0.75

(3) hashset(collection <?  extends e>   c) 構造乙個包含指定collection中元素的set

(4) hashset(int initialcapacity) ;構造乙個新的set集合,指定預設的初始的容量為initialcapacity;

(5) hashset(int initialcapacity ,float loadfactory) ;構造乙個新的set集合,初始容量為initicalcapacity 構造因子為loadfactory

(6) object clone(); 返回此hashset例項的淺表副本,但是沒有複製這些元素本身

4.2 treeset

(1) 沒有重複的有序集合

(2) 二叉樹實現的

(3) 插入資料的時候要比hastset要慢,但是比要插入到list中要快

java 物件導向集合類List

user zhangsan new user 張三 北京 user lisi new user 李四 上海 user users new user 5 users 0 zhangsan users 1 lisi 缺點 陣列的長度是固定的 list 長度不固定,適合 放一堆取一堆,不適合放一堆取乙個的...

java 集合類List系列 二

現討論一下以下的問題 如果需要刪除 重複的元素那該如何處理?list.add new student 張三 23 list.add new student 張三 23 list.add new student 李四 24 list.add new student 張三 23 list.add new...

Java中list集合框架

list裡物件 1.vector 內部是陣列資料結構,是同步的,不用了 2.arraylist 內部是陣列資料結果,是不同步的,替代了vector,查詢快 3.linkedlist 內部是鍊錶資料結構,是不同步的,增刪快 linkedlist link new linkedlist link.add...