java 遍歷Map的幾種方法總結(jié)
一、迭代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其實(shí)是遍歷了2次,一次是轉(zhuǎn)為Iterator對(duì)象,另一次是從hashMap中取出key所對(duì)應(yīng)的value;
而entrySet只是遍歷了一次就把key和value都放到了entry中,效率更高。如果是JDK8,使用Map.foreach方法。
說明:
values()返回的是V值集合,是一個(gè)list集合對(duì)象;keySet()返回的是K值集合,是一個(gè)Set集合對(duì)象;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的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
- Java5種遍歷HashMap數(shù)據(jù)的寫法
- JAVA8獨(dú)有的map遍歷方式(非常好用)
- Java中遍歷ConcurrentHashMap的四種方式詳解
- Java HashMap三種循環(huán)遍歷方式及其性能對(duì)比實(shí)例分析
- Java 遍歷取出Map集合key-value數(shù)據(jù)的4種方法
- Java HashMap 如何正確遍歷并刪除元素的方法小結(jié)
- Java四種遍歷Map的方法
- Java實(shí)現(xiàn)Map集合遍歷的四種常見方式與用法分析
- Java中map遍歷方式的選擇問題詳解
- java 遍歷Map及Map轉(zhuǎn)化為二維數(shù)組的實(shí)例
- 詳解Java中l(wèi)ist,set,map的遍歷與增強(qiáng)for循環(huán)
相關(guān)文章
Spring boot + mybatis + Vue.js 
這篇文章主要介紹了Spring boot + mybatis + Vue.js + ElementUI 實(shí)現(xiàn)數(shù)據(jù)的增刪改查實(shí)例代碼(二),非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-05-05idea中javaweb的jsp頁面圖片加載不出來問題及解決
這篇文章主要介紹了idea中javaweb的jsp頁面圖片加載不出來問題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-07-07SpringAOP實(shí)現(xiàn)登錄驗(yàn)證的操作代碼
這篇文章主要介紹了SpringAOP實(shí)現(xiàn)登錄驗(yàn)證功能,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-01-01HTTP 415錯(cuò)誤-Unsupported media type詳解
這篇文章主要介紹了HTTP 415錯(cuò)誤-Unsupported media type詳解,本篇文章通過簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-08-08