遍历 HashMap 的 5 种最佳方式,我不信你全知道!
生活随笔
收集整理的這篇文章主要介紹了
遍历 HashMap 的 5 种最佳方式,我不信你全知道!
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
在本文中,我們將通過示例討論在 Java 上遍歷 HashMap 的五種最佳方法。
使用 Iterator 遍歷 HashMap EntrySet
使用 Iterator 遍歷 HashMap KeySet
使用 For-each 循環(huán)迭代 HashMap
使用 Lambda 表達(dá)式遍歷 HashMap
使用 Stream API 遍歷 HashMap
1. 使用 Iterator 遍歷 HashMap EntrySet
package?com.java.tutorials.iterations;??import?java.util.HashMap;?? import?java.util.Iterator;?? import?java.util.Map;?? import?java.util.Map.Entry;??/**??*?在?Java?中遍歷?HashMap?的5種最佳方法??*?@author?Ramesh?Fadatare??*??*/?? public?class?IterateHashMapExample?{??public?static?void?main(String[]?args)?{??//?1.?使用?Iterator?遍歷?HashMap?EntrySet??Map?<?Integer,?String?>?coursesMap?=?new?HashMap?<?Integer,?String?>?();??coursesMap.put(1,?"C");??coursesMap.put(2,?"C++");??coursesMap.put(3,?"Java");??coursesMap.put(4,?"Spring?Framework");??coursesMap.put(5,?"Hibernate?ORM?framework");??Iterator?<?Entry?<?Integer,?String?>>?iterator?=?coursesMap.entrySet().iterator();??while?(iterator.hasNext())?{??Entry?<?Integer,?String?>?entry?=?iterator.next();??System.out.println(entry.getKey());??System.out.println(entry.getValue());??}??}?? } Output: 1?? C?? 2?? C++?? 3?? Java?? 4?? Spring?Framework?? 5?? Hibernate?ORM?framework2. 使用 Iterator 遍歷 HashMap KeySet
package?com.java.tutorials.iterations;??import?java.util.HashMap;?? import?java.util.Iterator;?? import?java.util.Map;??/**??*?在?Java?中遍歷?HashMap?的5種最佳方法??*?@author?Ramesh?Fadatare??*??*/?? public?class?IterateHashMapExample?{??public?static?void?main(String[]?args)?{??Map?<?Integer,?String?>?coursesMap?=?new?HashMap?<?Integer,?String?>?();??coursesMap.put(1,?"C");??coursesMap.put(2,?"C++");??coursesMap.put(3,?"Java");??coursesMap.put(4,?"Spring?Framework");??coursesMap.put(5,?"Hibernate?ORM?framework");??//?2.?使用?Iterator?遍歷?HashMap?KeySet??Iterator?<?Integer?>?iterator?=?coursesMap.keySet().iterator();??while?(iterator.hasNext())?{??Integer?key?=?iterator.next();??System.out.println(key);??System.out.println(coursesMap.get(key));??}??}?? }Output:
1?? C?? 2?? C++?? 3?? Java?? 4?? Spring?Framework?? 5?? Hibernate?ORM?framework??3. 使用 For-each 循環(huán)遍歷 HashMap
package?com.java.tutorials.iterations;??import?java.util.HashMap;?? import?java.util.Map;??/**??*?在?Java?中遍歷?HashMap?的5種最佳方法??*?@author?Ramesh?Fadatare??*??*/?? public?class?IterateHashMapExample?{??public?static?void?main(String[]?args)?{??Map?<?Integer,?String?>?coursesMap?=?new?HashMap?<?Integer,?String?>?();??coursesMap.put(1,?"C");??coursesMap.put(2,?"C++");??coursesMap.put(3,?"Java");??coursesMap.put(4,?"Spring?Framework");??coursesMap.put(5,?"Hibernate?ORM?framework");??//?3.?使用?For-each?循環(huán)遍歷?HashMap??for?(Map.Entry?<?Integer,?String?>?entry:?coursesMap.entrySet())?{??System.out.println(entry.getKey());??System.out.println(entry.getValue());??}??}?? }Output:
1?? C?? 2?? C++?? 3?? Java?? 4?? Spring?Framework?? 5?? Hibernate?ORM?framework4. 使用 Lambda 表達(dá)式遍歷 HashMap
?
package?com.java.tutorials.iterations;??import?java.util.HashMap;?? import?java.util.Map;??/**??*?在?Java?中遍歷?HashMap?的5種最佳方法??*?@author?Ramesh?Fadatare??*??*/?? public?class?IterateHashMapExample?{??public?static?void?main(String[]?args)?{??Map?<?Integer,?String?>?coursesMap?=?new?HashMap?<?Integer,?String?>?();??coursesMap.put(1,?"C");??coursesMap.put(2,?"C++");??coursesMap.put(3,?"Java");??coursesMap.put(4,?"Spring?Framework");??coursesMap.put(5,?"Hibernate?ORM?framework");??//?4.?使用?Lambda?表達(dá)式遍歷?HashMap??coursesMap.forEach((key,?value)?->?{??System.out.println(key);??System.out.println(value);??});??}?? }Output:
1?? C?? 2?? C++?? 3?? Java?? 4?? Spring?Framework?? 5?? Hibernate?ORM?framework5. 使用 Stream API 遍歷 HashMap
package?com.java.tutorials.iterations;??import?java.util.HashMap;?? import?java.util.Map;??/**??*?在?Java?中遍歷?HashMap?的5種最佳方法??*?@author?Ramesh?Fadatare??*??*/?? public?class?IterateHashMapExample?{??public?static?void?main(String[]?args)?{??Map?<?Integer,?String?>?coursesMap?=?new?HashMap?<?Integer,?String?>?();??coursesMap.put(1,?"C");??coursesMap.put(2,?"C++");??coursesMap.put(3,?"Java");??coursesMap.put(4,?"Spring?Framework");??coursesMap.put(5,?"Hibernate?ORM?framework");??//?5.?使用?Stream?API?遍歷?HashMap??coursesMap.entrySet().stream().forEach((entry)?-?>?{??System.out.println(entry.getKey());??System.out.println(entry.getValue());??});??}?? }Output:
1?? C?? 2?? C++?? 3?? Java?? 4?? Spring?Framework?? 5?? Hibernate?ORM?framework原文:https://www.javaguides.net/2020/03/5-best-ways-to-iterate-over-hashmap-in-java.html
作者:Ramesh Fadatare
翻譯:高行行
https://www.toutiao.com/a6803887957418705420/
總結(jié)
以上是生活随笔為你收集整理的遍历 HashMap 的 5 种最佳方式,我不信你全知道!的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 太酷了!Linux的30 个实例详解 T
- 下一篇: 一本彻底搞懂MySQL索引优化EXPLA