戴老师的博客 - map
type: channel
link: https://www.tushu.info/tag/map/
items: java 循环遍历 map

java 循环遍历 map
type: item
date: 2026-07-09T04:39:29+00:00
description: Java 中可以使用以下方法遍历 Map：for-each loop： for (Map.Entry<Key, Value> entry : map.entrySet(.html)) { Key key = entry.getKey(); Value value = entry.getValue(); // ... } Iterator：Iterator<Map.Entry<Key, Value>> it = map.entrySet().iterator(); while (it.hasNext(.html)) { Map.Entry<Key, Value> entry = it.next(); Key key = entry.getKey(); Value value = entry.getValue(); // ... }Stream API：map.forEach((key, value.html) -> { // ... }); Java 8 forEach + Lambda：map.entrySet().forEach(entry -> { Key key = entry.getKey(); Value value = entry.getValue(); // ... });

java 循环遍历 map
type: item
date: 2026-07-09T04:35:24+00:00
description: Java 中遍历 Map 的常用方法在 Java 开发中，遍历 Map 集合是一项高频操作。根据具体的业务需求（如是否需要删除元素、是否使用 Java 8 新特性等），可以选择不同的遍历方式。以下是几种主流的实现方法：1. 增强型 for 循环 (for-each.html)这是最通用且推荐的写法，适用于大多数场景。通过 entrySet() 获取键值对集合后进行遍历，代码简洁且易读。for (Map.Entry<Key, Value> entry : map.entrySet(.html)) { Key key = entry.getKey(); Value value = entry.getValue(); // ... } 2. 迭代器 (Iterator.html)如果需要在遍历过程中安全地删除元素，应使用 Iterator。这是在循环中修改集合结构的标准方式。Iterator<Map.Entry<Key, Value>> it = map.entrySet().iterator(); while (it.hasNext(.html)) { Map.Entry<Key, Value> entry = it.next(); Key key = entry.getKey(); Value value = entry.getValue(); // ... }3. Java 8 Map.forEach 方法利用 Java 8 引入的默认方法，可以直接通过 Lambda 表达式遍历键值对。注意这并非 Stream API，而是 Map 接口自带的 forEach 方法，语法最为简洁。map.forEach((key, value.html) -> { // ... }); 4. Java 8 entrySet().forEach同样基于 Java 8 特性，这种方式是对 entrySet() 返回的 Set 集合直接调用 forEach 方法。与第 3 种方法相比，它操作的是 Entry 对象。map.entrySet().forEach(entry -> { Key key = entry.getKey(); Value value = entry.getValue(); // ... });说明：方法 3 和方法 4 依赖 Lambda 表达式，需要 Java 8 或更高版本支持。若项目运行在较低版本，请使用方法 1 或方法 2。代码中的 Key 和 Value 请替换为实际的泛型类型。