集合的定義?
集合:用來儲存一組資料的資料結構
集合的父介面,實現介面,實現類,實現類的常用方法是什麼?(建議以樹狀圖畫出來,便於加深印象)。
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集...