lamda表达式遍历map时怎么继续循环
时间: 2023-08-24 10:08:43 浏览: 140
Lambda表达式里面修改外部变量问题
在使用 Lambda 表达式遍历 Map 的时候,如果需要在某个条件下继续循环,可以使用 `continue` 关键字来实现。Lambda 表达式中的 `continue` 关键字会直接跳过当前元素的处理,继续下一次循环。
下面是一个使用 Lambda 表达式遍历 Map 并继续循环的示例代码:
```java
Map<String, Integer> map = new HashMap<>();
map.put("A", 1);
map.put("B", 2);
map.put("C", 3);
map.forEach((key, value) -> {
if (value == 2) {
// 满足条件时,跳过当前元素,继续下一次循环
return;
}
System.out.println(key + ": " + value);
});
```
在上述代码中,使用 `forEach()` 方法遍历 Map,Lambda 表达式中的 if 语句判断了 value 是否等于 2。如果满足条件,就会执行 `return` 跳过当前元素的处理,继续下一次循环。如果不满足条件,则会执行打印语句。
运行上述代码,输出结果为:
```
A: 1
C: 3
```
可以看到,在满足条件 value 等于 2 的情况下,跳过了 key 为 "B" 的元素,继续循环处理其他元素。
需要注意的是,在 Lambda 表达式中使用 `continue` 只能跳过当前元素,无法直接跳出循环。如果需要跳出循环,可以考虑使用传统的 for 循环或者使用其他控制流语句来实现。
阅读全文