admin管理员组文章数量:1417255
结论:
在Java8的foreach()中不能break,如果需要continue时,可以使用return。lambda表达式中使用return时,这个方法是不会返回的,而只是执行下一次遍历。
测试代码:
List<String> list = Arrays.asList("12", "14345", "16", "abch", "sdfhrthj", "mvkd");
list.stream().forEach(e ->{
if(e.length() >= 3){
return;
}
System.out.println(e);
});
可以看出return起到的作用和continue是相同的。
原因:
Stack Overflow中的答案,主要是说foreach()不是一个循环,不是设计为可以用break以及continue来中止的操作。
版权声明:本文标题:在Java8中foreach()不能break,如果需要continue时,怎么办 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/biancheng/1741179615a2353213.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论