【发布时间】:2014-06-06 12:23:50
【问题描述】:
for 循环和 foreach 可以使用 break 指令。而是 Java8 消费者。
beans.forEach(v->{
if (v.id != 100){
//break or continue
}
v.doSomeThing();
});
【问题讨论】:
-
没有简单的方法可以做到这一点 - 你可以过滤元素或限制元素的数量,但你不能轻易地在随机条件下破坏 forEach。
-
您在这里使用了错误的工具来完成错误的工作,如果您需要这样的条件,那么只需使用常规的 for 循环,尤其是当您不使用流时。
-
@Holame A
continue在forEach中基本上只是过滤否定,所以你可以做类似beans.stream().filter(v -> v.id == 100).forEach(v -> v.doSomeThing())的事情。 -
@StuartMarks 确实 - 您可以将问题作为另一个问题的副本关闭,两个链接都将出现在关闭原因中。
标签: java functional-programming java-8