遍歷集合獲取下標 集合框架的部分內容

2021-10-16 05:35:29 字數 1830 閱讀 1367

集合的定義?

集合:用來儲存一組資料的資料結構

集合的父介面,實現介面,實現類,實現類的常用方法是什麼?(建議以樹狀圖畫出來,便於加深印象)。

collection

list set

arraylist linkedlist hashset treeset

1.list集合

list集合的特徵是元素可重複且有序 ;我們可以把他看成是乙個動態陣列,一般通過下標訪問

arraylist和linkedlist最常用的兩個子類實現

1)list可以使用for迴圈遍歷

for(int i=;ilist.get(i);

2)list的淺層複製

呼叫arrarylist.clone()方法

注意:不能使用list.clone(),clone()方法是object類的方法,list是介面是不能繼承object類的

2.set集合:

不重複且無序集

遍歷set只能迭代器,用迭代器遍歷集合遵循的操作原則:先問後取。問一次取一次。

iteratorit=set.iterator();

while(it.hashnext()){

e e=it.next();

3)map表

map儲存資料使用key-value(鍵-值)對的形式儲存資料的。

對於map而言,要求key值是唯一的。value值可以重複

獲取資料時,使用key可以獲取其對應的value

遍歷map有3種方法

1)遍歷key

setkeyset = map.keyset();

for(string key:keyset){

system.out.println("key:" + key);

//可以根據每乙個key獲取其對應的value值

int value = map.get(key);

2)遍歷value

collectionvalues = map.values();

iteratorit = values.iterator();

while(it.hasnext()){

int value = it.next();//不能採用 map.next()

system.out.println("value:" + value);

注意:通過迭代器在遍歷集合的過程中,不能通過集合(即不能採用 map.next())去改變集合元素數量

3)遍歷鍵值對

set> entries= map.entryset();

for(entryentry : entries){

//獲取一組鍵值對的鍵和值

string key = entry.getkey();

int value = entry.getvalue();

system.out.println(key + "=" + value);

collection介面方法的定義

這裡我主要列舉 iterator iterator()方法的使用

collection提供的方法 iterator iterator()方法來獲取迭代器

iterator是乙個介面,定義了遍歷集合應有的方法。

使用迭代器遍歷集合遵循的操作原則:先問後取。問一次取一次。

問:boolean hashnext()

取:object next()

迭代器可以將取出的資料刪除掉

刪:remove() 將當前獲取的元素刪除掉。

注意:1)刪除的是next()取出的元素。且只能刪除一次!

2)呼叫1次next()後只能呼叫一次remove()!

如何獲取集合裡面的下標 集合上下極限公式的理解

對於集合的上下極限,有公式為 也就是左邊的下標變數和右邊的沒有任何關係。如果如下修改,就不會造成任何誤解 現在問題上極限為什麼不是 我們可以舉乙個例子 顯然 但是,如果定義是 那麼了,而定義 也就是先並再求交,就可以過濾掉 和該集合序列的前面較大集合的影響,確保集合極限的獲取。同樣如果定義 那麼對於...

c 集合的遍歷

1 arraylist的遍歷 foreach object objinmylist obj 2 hashtable的遍歷 for dictionaryentry deinht ht為乙個hashtable例項 3 list的遍歷 listmylist newlist foreach string i...

map集合的遍歷

map集合的第一種遍歷方式 通過鍵找值的方式 map集合中的方法 set keyset 返回此對映中包含的鍵的 set 檢視。實現步驟 1.使用map集合中的方法keyset 把map集合所有的key取出來,儲存到乙個set集合中 2.遍歷set集合,獲取map集合中的每乙個key 3.通過map集...