Java 遍歷取出Map集合key-value數(shù)據(jù)的4種方法
更新時間:2019年09月04日 09:40:54 作者:遲到_啦
這篇文章主要介紹了Java 遍歷取出Map集合key-value數(shù)據(jù)的4種方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
將map集合存數(shù)據(jù)與取出數(shù)據(jù)全部放在一個類MapTest中,方便閱讀與查看
隨便創(chuàng)建一個包,在包中新建一個class文件,(也可以不建包,直接新建一個class文件)
新建class文件MapTest.java,代碼如下:
import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java.util.Map.Entry; import java.util.Set; public class MapTest { public static void main(String[] args) { Map<Integer, String> map = new HashMap<>(); //map集合存入數(shù)據(jù) map.put(1, "第一個value"); map.put(2, "第二個value"); map.put(3, "第三個value"); //通過keySet取出map數(shù)據(jù)[for-each循環(huán)] System.out.println("-------[for-each循環(huán)遍歷]通過keySet取出map數(shù)據(jù)-------"); Set<Integer> keys = map.keySet(); //此行可省略,直接將map.keySet()寫在for-each循環(huán)的條件中 for(Integer key:keys){ System.out.println("key值:"+key+" value值:"+map.get(key)); } //通過EntrySet取出map數(shù)據(jù)[for-each循環(huán)] System.out.println("-------[for-each循環(huán)遍歷]通過EntrySet取出map數(shù)據(jù)-------"); Set<Entry<Integer, String>> entrys = map.entrySet(); //此行可省略,直接將map.entrySet()寫在for-each循環(huán)的條件中 for(Entry<Integer, String> entry:entrys){ System.out.println("key值:"+entry.getKey()+" value值:"+entry.getValue()); } //通過keySet取出map數(shù)據(jù)[Iterator遍歷] System.out.println("-------[Iterator循環(huán)遍歷]通過keySet取出map數(shù)據(jù)---------"); Iterator<Integer> it = map.keySet().iterator(); //map.keySet()得到的是set集合,可以使用迭代器遍歷 while(it.hasNext()){ Integer key = it.next(); System.out.println("key值:"+key+" value值:"+map.get(key)); } //通過EntrySet取出map數(shù)據(jù)[Iterator遍歷] System.out.println("-------[Iterator循環(huán)遍歷]通過EntrySet取出map數(shù)據(jù)---------"); Iterator<Entry<Integer, String>> iterator = map.entrySet().iterator(); //map.entrySet()得到的是set集合,可以使用迭代器遍歷 while(iterator.hasNext()){ Entry<Integer, String> entry = iterator.next(); System.out.println("key值:"+entry.getKey()+" value值:"+entry.getValue()); } } }
控制臺效果:
知識補充:
- list和set集合都實現(xiàn)了Iterable接口,所以他們的實現(xiàn)類可以使用迭代器遍歷,map集合未實現(xiàn)該接口,若要使用迭代器循環(huán)遍歷,需要借助set集合
- 推薦使用 EntrySet 遍歷,效率更高。
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
SpringBoot高版本修改為低版本時測試類報錯的解決方案
這篇文章主要介紹了SpringBoot高版本修改為低版本時測試類報錯的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-09-09Java數(shù)據(jù)結(jié)構(gòu)之并查集的實現(xiàn)
并查集是一種用來管理元素分組情況的數(shù)據(jù)結(jié)構(gòu)。并查集可以高效地進行如下操作。本文將通過Java實現(xiàn)并查集,感興趣的小伙伴可以了解一下2022-01-0110個SpringBoot參數(shù)驗證你需要知道的技巧分享
參數(shù)驗證很重要,是平時開發(fā)環(huán)節(jié)中不可少的一部分,那么在Spring?Boot應(yīng)用中如何做好參數(shù)校驗工作呢,本文提供了10個小技巧,你知道幾個呢2023-03-03