最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java中Map遍歷的四種方式總結(jié)

 更新時(shí)間:2023年03月27日 11:13:16   作者:睡竹  
Map集合遍歷日常開發(fā)最常使用,下面這篇文章主要給大家總結(jié)介紹了關(guān)于java中Map遍歷的四種方式,文中通過實(shí)例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用java具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

本文以如下map案例:

Map<String, String> map = new HashMap<>();
map.put("student1", "張三");
map.put("student2", "李四");
map.put("student3", "王五");

1、map.entrySet()方式

entrySet()方法: 獲取map中所有的鍵值對(duì),結(jié)果為Set集合

在jdk版本小于1.8時(shí),該種方式經(jīng)常使用,效率高

//獲取map中的所有鍵值對(duì),結(jié)果為Set類型的集合
Set<Map.Entry<String, String>> entries = map.entrySet();
/** 遍歷Set集合、開發(fā)中常見的遍歷方式 */
//1、增強(qiáng)for形式遍歷結(jié)果
for (Map.Entry<String, String> entry : entries) {
     System.out.println(entry);
}
//2、Lamdba表達(dá)式遍歷結(jié)果
entries.forEach(entry-> System.out.println(entry));

2、map.keySet()方式

keySet()方法:獲取map中的所有鍵(key),結(jié)果為Set集合

該種方式比 entrySet()方式較慢,且比方式4慢,實(shí)際開發(fā)中也可使用

//獲取map中的所有鍵,結(jié)果為Set類型的集合
Set<String> keys = map.keySet();
//根據(jù)key獲取map中的元素
for (String key : keys) {
    System.out.println(map.get(key));
}

3、map.values()方式

values():直接獲取map所有的值(value),組裝為一個(gè)Collection集合

該種方式效率最低,使用到最上層的Collection接口,開發(fā)中應(yīng)當(dāng)避免使用

//直接獲取map所有的值(value),組裝為一個(gè)Collection集合【Collection集合是Set、List的父接口】
Collection<String> values = map.values();
//遍歷Collection集合
for (String value : values) {
    System.out.println(value);
}

4、forEach方式

需JDK8及以上,直接支持遍歷map

該種方式是方式1(entrySet)的進(jìn)一步封裝,優(yōu)化了代碼的簡(jiǎn)潔性,性能與entrySet略慢(因?yàn)檫M(jìn)一步封裝了下),開發(fā)中經(jīng)常使用

語(yǔ)法:

//當(dāng)業(yè)務(wù)代碼只有一句時(shí),"{}"符號(hào)與";"符號(hào)可以省略

map.forEach((鍵變量名稱,值遍歷名稱)->{

        //業(yè)務(wù)代碼

});

map.forEach((key,value)-> System.out.println(value));

總結(jié)

到此這篇關(guān)于java中Map遍歷的四種方式總結(jié)的文章就介紹到這了,更多相關(guān)java Map遍歷方式內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • java 字符串截取的實(shí)例詳解

    java 字符串截取的實(shí)例詳解

    這篇文章主要介紹了java 字符串截取的實(shí)例詳解的相關(guān)資料,這里提供了實(shí)例代碼幫助大家實(shí)現(xiàn)這樣的功能,需要的朋友可以參考下
    2017-08-08
  • Java后端產(chǎn)生驗(yàn)證碼后臺(tái)驗(yàn)證功能的實(shí)現(xiàn)代碼

    Java后端產(chǎn)生驗(yàn)證碼后臺(tái)驗(yàn)證功能的實(shí)現(xiàn)代碼

    這篇文章主要介紹了Java后臺(tái)產(chǎn)生驗(yàn)證碼后臺(tái)驗(yàn)證功能,本文文字結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-06-06
  • 一文帶你厲害Java設(shè)計(jì)模式中的模板方法

    一文帶你厲害Java設(shè)計(jì)模式中的模板方法

    模板方法定義了一個(gè)算法的步驟,并允許子類為一個(gè)或多個(gè)步驟提供實(shí)現(xiàn)。這篇文章就來(lái)帶大家了解一下Java模板方法的概念與實(shí)現(xiàn),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-01-01
  • java.lang.Long cannot be cast to java.lang.Integer數(shù)據(jù)類型轉(zhuǎn)換異常解決辦法

    java.lang.Long cannot be cast to ja

    本文主要介紹了java.lang.Long cannot be cast to java.lang.Integer數(shù)據(jù)類型轉(zhuǎn)換異常解決辦法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • Java中CyclicBarrier和CountDownLatch的用法與區(qū)別

    Java中CyclicBarrier和CountDownLatch的用法與區(qū)別

    CyclicBarrier和CountDownLatch這兩個(gè)工具都是在java.util.concurrent包下,并且平時(shí)很多場(chǎng)景都會(huì)使用到。本文將會(huì)對(duì)兩者進(jìn)行分析,記錄他們的用法和區(qū)別,感興趣的可以了解一下
    2021-08-08
  • springmvc+kindeditor文件上傳實(shí)例詳解

    springmvc+kindeditor文件上傳實(shí)例詳解

    這篇文章主要為大家詳細(xì)介紹了springmvc+kindeditor文件上傳實(shí)例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-08-08
  • Java如何執(zhí)行cmd命令

    Java如何執(zhí)行cmd命令

    這篇文章主要介紹了Java如何執(zhí)行cmd命令問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • java實(shí)現(xiàn)二叉樹遍歷的三種方式

    java實(shí)現(xiàn)二叉樹遍歷的三種方式

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)二叉樹遍歷的三種方式,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-01-01
  • Seata?環(huán)境搭建部署過程

    Seata?環(huán)境搭建部署過程

    Seata是一個(gè)分布式事務(wù),seata服務(wù)端也是一個(gè)微服務(wù),需要和其他微服務(wù)一樣需要注冊(cè)中心和配置中心,這篇文章主要介紹了Seata?環(huán)境搭建,需要的朋友可以參考下
    2022-10-10
  • SpringBoot解決ajax跨域問題的方法

    SpringBoot解決ajax跨域問題的方法

    這篇文章主要為大家詳細(xì)介紹了SpringBoot解決ajax跨域問題的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-03-03

最新評(píng)論

香港 | 桦川县| 莆田市| 临沂市| 兴隆县| 舞阳县| 安龙县| 泰宁县| 金昌市| 务川| 中牟县| 田东县| 右玉县| 古田县| 沅陵县| 新龙县| 祁东县| 柘城县| 黑河市| 信阳市| 烟台市| 大田县| 休宁县| 玛沁县| 临桂县| 罗源县| 承德县| 正宁县| 石狮市| 上虞市| 达州市| 杭锦后旗| 青龙| 玛多县| 闽侯县| 于田县| 含山县| 若羌县| 鸡西市| 五河县| 龙陵县|