本示例说明如何在 Java 中遍历HashMap
在 Java 中遍历集合或数据集是一项非常常见的任务。 您可以使用它来打印或处理数据。 以下示例显示了有关如何遍历HashMap的三种不同方法。 根据您的 Java 版本,您可以选择其中之一。
使用for遍历HashMap
这是建议的方法。 它使您可以完全控制地图中的键和值。 使用这种方法,您实际上遍历了映射的EntrySet,并获得了循环内每个条目的键和值。
每个版本在 Java 版本 1.5 中均可用
import java.util.HashMap;import java.util.Map;public class IterateHashMap {public static void main(String[] args) {Map<String, String> map = new HashMap<String, String>();map.put("key1", "value1");map.put("key2", "value2");for (Map.Entry<String, String> entry : map.entrySet()) {System.out.println(entry.getKey() + " = " + entry.getValue());}}}
在 Java 8 中使用 Lambda 表达式遍历HashMap
Java 8+ 版本中提供了这种方法。
import java.util.HashMap;import java.util.Map;public class IterateHashMap {public static void main(String[] args) {Map<String, String> map = new HashMap<String, String>();map.put("key1", "value1");map.put("key2", "value2");map.forEach((key,value) -> System.out.println(key + " = " + value));}}
使用Iterator遍历HashMap
此方法使用java.util.Iterator浏览HashMap。 这是 Java 1.4 和更早版本中的默认方法。 尽管下面的示例使用泛型,所以您需要 Java 1.5+ 才能执行它
import java.util.HashMap;import java.util.Iterator;import java.util.Map;import java.util.Map.Entry;public class IterateHashMap {public static void main(String[] args) {Map<String, String> map = new HashMap<String, String>();map.put("key1", "value1");map.put("key2", "value2");Iterator<Entry<String, String>> it = map.entrySet().iterator();while (it.hasNext()) {Map.Entry<String, String> pair = (Map.Entry<String, String>) it.next();System.out.println(pair.getKey() + " = " + pair.getValue());}}}
