jdk8中的forEach使用return執行下一次遍歷


jdk8中的forEach使用return執行下一次遍歷

在使用foreach()處理集合時不能使用break和continue這兩個方法,

也就是說不能按照普通的for循環遍歷集合時那樣根據條件來中止遍歷,

而如果要實現在普通for循環中的效果時,可以使用return來達到,

也就是說如果你在一個方法的lambda表達式中使用return時,這個方法是不會返回的,而只是執行下一次遍歷,看如下代碼:

 

 1 List<String> list = new ArrayList<String>();
 2 list.add("1");
 3 list.add("2");
 4 list.add("3");
 5 
 6 list.forEach(str -> {
 7     System.out.println(str);
 8     if (str.equals("1")) {
 9         return;
10     }
11 
12     System.out.println("hello");
13 });

運行結果如下:

1 1
2 2
3 hello
4 3
5 hello

可以看出,此處return起到的作用和普通for循環中的continue是相同的。

 

轉發: https://blog.csdn.net/b68b00/article/details/75504271?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-1.vipsorttest&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-1.vipsorttest

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM