国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術(shù)文章
文章詳情頁

java 遍歷Map的幾種方法總結(jié)

瀏覽:129日期:2022-08-22 10:10:54

一、迭代key&value

第一種方式:迭代entrySet

1.方法一

/** * entrySet集合for-each循環(huán)(推薦使用) * 這種方式必須聲明泛型類型: * a.bizData使用Map接收必須得聲明泛型;b.for-each()里的Entry的泛型控制可有可無 * Map的泛型控制通常使用<String,Object> */Map<String, Object> bizData = dataBus.getBizData();for (Entry<String, Object> entry : bizData.entrySet()) { System.out.println(entry.getKey() + '=' + entry.getValue());} 

2.方法二

/** * entrySet集合迭代 */Iterator iterator = map.entrySet().iterator();while (iterator.hasNext()) { Entry<String, Object> entry = iterator.next(); System.out.println(entry.getKey() + '=' + entry.getValue()); }

第二種方式:迭代keySet

3.方法三

/** * keySet集合迭代 */Iterator iterator = map.keySet().iterator();while (iterator.hasNext()) { //獲取鍵 String key = iterator.next().toString();//或String key = (String)iterator.next(); //根據(jù)鍵獲取值 Object value = map.get(key); System.out.println('鍵:'+ key + ',值:' + value);}

4.方法四

/** * keySet集合for-each循環(huán) */for (String key:map.keySet()) { System.out.println(key + '=' + map.get(key));}

5.小結(jié)

注意:

遍歷Map類集合KV,推薦使用entrySet而不是keySet

原因:

keySet其實是遍歷了2次,一次是轉(zhuǎn)為Iterator對象,另一次是從hashMap中取出key所對應(yīng)的value;

而entrySet只是遍歷了一次就把key和value都放到了entry中,效率更高。如果是JDK8,使用Map.foreach方法。

說明:

values()返回的是V值集合,是一個list集合對象;keySet()返回的是K值集合,是一個Set集合對象;entrySet()返回的是K-V值組合集合。

二、只迭代key

//只遍歷鍵for (String key:map.keySet()) { System.out.println(key);}

三、只迭代value

//只遍歷值for (Object val:map.values()) { System.out.println(val);}

以上就是java 遍歷Map的幾種方法總結(jié)的詳細(xì)內(nèi)容,更多關(guān)于java 遍歷Map的資料請關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: Java
相關(guān)文章:
主站蜘蛛池模板: 黎川县| 江孜县| 大渡口区| 莱芜市| 灵丘县| 鹤峰县| 香格里拉县| 塘沽区| 姜堰市| 洞头县| 邮箱| 油尖旺区| 襄汾县| 墨江| 从化市| 呈贡县| 婺源县| 富民县| 七台河市| 金昌市| 广宗县| 新蔡县| 夏津县| 称多县| 四平市| 瑞金市| 元谋县| 德庆县| 富裕县| 庄浪县| 宁河县| 扶绥县| 惠来县| 河源市| 阿城市| 满城县| 新郑市| 彭山县| 乌海市| 武川县| 宣城市|