java map.foreach如何使用外部变量,给出代码示例
时间: 2024-04-30 09:22:06 浏览: 136
可以使用Lambda表达式来使用外部变量,示例代码如下:
```
Map<String, Integer> map = new HashMap<>();
map.put("apple", 1);
map.put("banana", 2);
map.put("orange", 3);
int sum = 0;
final int factor = 2; // 外部变量
map.forEach((key, value) -> {
int newValue = value * factor; // 使用外部变量
System.out.println(key + " : " + newValue);
sum += newValue;
});
System.out.println("sum : " + sum);
```
这段代码中,通过`forEach`方法遍历`Map`,使用Lambda表达式处理每个键值对,内部声明一个新的变量`newValue`,通过乘以外部变量`factor`来对`value`进行转换。同时,也通过外部变量`sum`来累加结果。
相关问题
java map.foreach如何使用并修改外部变量,给出代码示例
可以使用Lambda表达式来遍历Map并修改外部变量,示例代码如下:
```
Map<String, Integer> map = new HashMap<>();
map.put("key1", 1);
map.put("key2", 2);
int sum = 0;
map.forEach((key, value) -> {
// 对外部变量sum进行累加
sum += value;
});
System.out.println("sum = " + sum); // 输出:sum = 3
```
在这个例子中,我们遍历了一个存储String和Integer类型的键值对的Map,通过Lambda表达式对外部变量sum进行累加操作。最终输出sum的值为3。
阅读全文