原文地址: https://www.javaguides.net/20...
作者:Ramesh Fadatare
翻译:高行行
https://www.toutiao.com/a6803...在本文中,我们将通过示例讨论在 Java 上遍历 HashMap 的五种最佳方法。
通过 https://www.javaguides.net/20... [6]了解有关 lambda 表达式的信息
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 framework
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
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 循环遍历 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 framework
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 表达式遍历 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 framework
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
关注微信公众号:Java技术栈,在后台回复:java,可以获取我整理的 N 篇最新 Java 教程,都是干货。
1. Java JVM、集合、多线程、新特性系列教程
2. Spring MVC、Spring Boot、Spring Cloud 系列教程
3. Maven、Git、Eclipse、Intellij IDEA 系列工具教程
4. Java、后端、架构、阿里巴巴等大厂最新面试题
生活很美好,明天见~