overview java 六 集合框架

2021-08-08 04:53:00 字數 3353 閱讀 3833

集合中的結構和幾個實現類

collection                      無序                                           允許元素重複

set-abstractset            無序  不允許元素重複   

和hashset      

treeset                          有序不允許元素重複

map-abstractmap           無序不允許元素重複   

和hashmap      

treemap                         有序不允許元素重複

collection介面 用於表示任何物件或元素組。

1,單元素新增刪除操作。

boolean add(object o);將物件新增給集合。

boolean remove(object o);如果集合中有與o相匹配的物件,則刪除物件。

2,查詢操作

int size();返回當前集合中元素的數量;

boolean isempty();判斷集合中是否含有物件o

boolean contains(object o);查詢集合中是否含有物件o;

iteration iterator() 返回乙個迭代器,用來訪問集合中的各個元素。

3,組操作;

boolean cantainsall(collection c):查詢是否包含

boolean addall(collection c):從集合中刪除集合c 中不包含的元素

void  clear()   :刪除集合中的所有元素

void removeall(collection c),刪除集合c中所有的元素

void retain(collection c)  :從集合中刪除集合c中不包含的元素

4,集合轉為陣列

toarray(),返回乙個內含集合所有元素的array

5,如果要遍歷collection,必須用iteration

list介面

1,對collection的簡單擴充,它的具體實現有arraylist和linkedlist

linkedlist 是內部實現是鍊錶,適用頻繁的插入和刪除操作。

arraylist   隨機訪問速度比較快

void add(int index,object element),在指定位置上新增元素element

boolean addall(int indecx,collection c):將集合c的所有元素新增到指定位置index

get(int index):返回list中的指定位置的元素。

int indexof(object o):返回第乙個出現o的位置,否則返回-1

int lastindexof(object o):返回最後乙個出線元素o的位置,返回-1;

remove(int index);刪除指定位置的元素

set(int index,object element);用element取代原來index位置上的元素,並且返回舊的元素。

2,迭代

list介面

1,listiterator  返回乙個列表迭代器,用來訪問列表中的元素

2,支援列表迭代,從指定位置開始訪問列表中的元素

3,返回從指定位置到到結束的範圍內的元素

linkedlist類新增了一些處理列表兩端元素的方法。

(1) void addfirst(object o): 將物件o新增到列表的開頭

void addlast(object o):將物件o新增到列表的結尾

(2) object getfirst(): 返回列表開頭的元素

object getlast(): 返回列表結尾的元素

(3) object removefirst(): 刪除並且返回列表開頭的元素

object removelast():刪除並且返回列表結尾的元素

(4) linkedlist(): 構建乙個空的鏈結列表

linkedlist(collection c): 構建乙個鏈結列表,並且新增集合c的所有元素

「使用這些新方法,您就可以輕鬆的把 linkedlist 當作乙個堆疊、佇列或其它面向端點的資料結構。」

arraylist類

arraylist類封裝了乙個動態再分配的object陣列。每個arraylist物件有乙個capacity。這個capacity表示儲存列表中元素的陣列的容量。當元素新增到arraylist時,它的capacity在常量時間內自動增加。

在向乙個arraylist物件新增大量元素的程式中,可使用ensurecapacity方法增加capacity。這可以減少增加重分配的數量。

(1) void ensurecapacity(int mincapacity): 將arraylist物件容量增加mincapacity

(2) void trimtosize(): 整理arraylist物件容量為列表當前大小。程式可使用這個操作減少arraylist物件儲存空間。

set介面:

set中的物件元素不能重複,你不能把同樣的東西放入同乙個set容器中。

hash表:

hash表是一種資料結構,用來查詢物件。hash表為每個物件計算出乙個整數。hash code。

map是一種把鍵物件和值物件進行關聯的容器。多級對映。鍵不能重複。

collection:表示集合

set:不允許重複的集合

list:可以有有重複元素的集合

map:鍵-值對映對

collection定義

collection c = new vector();

//vector 是collection集合介面的實現者。

c.add(0);

object arr=c.toarray();

for(object o:arr)

list

list a = new vector();

a.set(0,99);

stack 是一種先進後出的集合

boolean empty():是否為空;

e peek().檢視棧頂

e pop(),移除頂端,並返回物件

e push(e item) 把頂壓入棧頂;

int search(object o);返回物件在棧中的位置

stack a =new stack();

setset a = new hashset();

student s = new student("zhangsan",21);

a.add(s);

arraylist list = new arraylist();

陣列int intarray = new int[5];

map迭代方式

Python基礎六(集合 函式)

可變型別與不可變型別 函式3.不定長引數 4.引數的解包 使用 來建立集合 可以通過set 來將序列和字典轉換成集合 字典轉換成集合的時候,取的是字典的鍵key len 使用len 來獲取集合中元素的數量 add 像集合中新增元素 update 將乙個集合中的元素新增到另乙個集合當中 pop 隨機刪...

JMeter學習(六)集合點

jmeter也有像lr中的集合點,本篇就來介紹下jmeter的集合點如何去實現。jmeter裡面的集合點通過新增定時器來完成。注意 集合點的位置一定要在sample之前.集合點 簡單來理解一下,雖然我們的 效能測試 理解為 多使用者併發測試 但真正的併發是不存在的,為了更真實的實現併發這感念,我們可...

JMeter學習(六)集合點

jmeter也有像lr中的集合點,本篇就來介紹下jmeter的集合點如何去實現。jmeter裡面的集合點通過新增定時器來完成。集合點 簡單來理解一下,雖然我們的 效能測試 理解為 多使用者併發測試 但真正的併發是不存在的,為了更真 實的實現併發這感念,我們可以在需要壓力的地方設定集合點,拿那個使用者...