public SetkeySet(): 獲取所有鍵組成的Set集合
遍歷Set集合獲取到每一個鍵之后,通過get方法獲取到對應(yīng)的值。
案例:
public class MapDemo3 {public static void main(String[] args) {HashMapstudents = new HashMap<>();
students.put("小三","北京市昌平區(qū)");
students.put("小四","北京市昌平區(qū)");
students.put("小五","北京市海淀區(qū)");
students.put("小六","北京市門頭溝區(qū)");
//Map遍歷方式(1):鍵找值:獲取所有鍵,在通過鍵找值
//1、獲取到所有鍵組成的set集合 keySet方法
Setkeys = students.keySet();
//2、遍歷Set集合獲取每一個鍵,通過get方法獲取值
for (String key : keys) {String value = students.get(key);
System.out.println("[key]:"+key+" [value]:"+value);
}
}
}
通過entrySet方法可以獲取到所有鍵值對對象組成的Set集合。
public Set>entrySet() : 獲取所有鍵組成的Set集合
遍歷Set集合獲取每一個鍵值對對象之后可以通過鍵值對對象的方法獲取里面封裝的鍵與值。
public K getKey() : 獲取鍵值對中的鍵
public V getValue() : 獲取鍵值對中的值
案例:
public class MapDemo4 {public static void main(String[] args) {HashMapstudents = new HashMap<>();
students.put("小三", "北京市昌平區(qū)");
students.put("小四", "北京市昌平區(qū)");
students.put("小五", "北京市海淀區(qū)");
students.put("小六", "北京市門頭溝區(qū)");
//Map的遍歷方式(2):鍵值對 獲取所有鍵值對對象之后,遍歷獲取到每一個鍵值對對象,在獲取key和value
//1、entrySet方法獲取所有的鍵值對對象 注意:調(diào)用方法之后自然返回值即可
Set>entrySet = students.entrySet();
for (Map.Entryentry : entrySet) {String key = entry.getKey();
String value = entry.getValue();
System.out.println("key:"+key+" value:"+value);
}
}
}
Map中的提供了獲取所有值的方法,但是此方法只可以獲取到所有的值,無法通過值獲取到鍵。
通過values方法可以獲取到所有值組成的集合
public Collectionvalues() : 獲取所有值組成的Collection集合。
//因為值會重復(fù)所以返回的是Collection集合
案例:
public class MapDemo5 {public static void main(String[] args) {HashMapstudents = new HashMap<>();
students.put("小三", "北京市昌平區(qū)");
students.put("小四", "北京市昌平區(qū)");
students.put("小五", "北京市海淀區(qū)");
students.put("小六", "北京市門頭溝區(qū)");
//Map遍歷方式(3):獲取所有值
Collectionvalues = students.values();
System.out.println("values:"+values);
}
}
實際上Map提供了一個方法,可以自動完成Map的遍歷,開發(fā)者需要提供的就是如何使用獲取到的鍵與值。
函數(shù)式編程思想:不管怎么去做(不管怎么獲取鍵和值),而是強(qiáng)調(diào)去做什么(鍵和值要去怎么用)。
public void foreach(BiConsumerconsumer) : 按照指定的邏輯使用Map中的每一個鍵值
案例:
public class MapDemo6 {public static void main(String[] args) {HashMapstudents = new HashMap<>();
students.put("小三", "北京市昌平區(qū)");
students.put("小四", "北京市昌平區(qū)");
students.put("小五", "北京市海淀區(qū)");
students.put("小六", "北京市門頭溝區(qū)");
//Map的遍歷方式(4):foreach[函數(shù)式編程]
//1、調(diào)用foreach方法,在方法的參數(shù)中傳遞BiConsumer接口的實現(xiàn)對象,實現(xiàn)accept(消費(fèi)鍵值的方法)
//使用的是匿名內(nèi)部類。
students.forEach(new BiConsumer() {//參數(shù)1:鍵 參數(shù)2:值
//實現(xiàn)accept方法
@Override
public void accept(String key, String value) {//accept方法中Map會自動獲取到的每一個鍵,值作為參數(shù)傳遞(通過key+value去做什么)
System.out.println("key:"+key+" value:"+value);
}
});
}
}
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧
當(dāng)前文章:Map雙列集合的四種遍歷方式-創(chuàng)新互聯(lián)
本文鏈接:http://chinadenli.net/article16/ddijdg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供標(biāo)簽優(yōu)化、網(wǎng)站設(shè)計、響應(yīng)式網(wǎng)站、網(wǎng)站維護(hù)、關(guān)鍵詞優(yōu)化、ChatGPT
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容