public class LambdaTest { public static void main(String[] args) { // 相當於foreach遍歷操作結果值 Integer out = Stream.of(10, 5, 3, 2, 1, 0).reduce((result, item) -> { if (item >= 3) { result = result + item; } return result; }).get(); System.out.println(out); // 相當於給定初始結果值,foreach遍歷操作結果值 Integer sum = Stream.of(10, 5, 3, 2, 1, 0).reduce(9, LambdaTest::sumTest); System.out.println(sum); //相當於給定初始結果值,兩個foreach遍歷操作結果值 int str = Stream.of(1,2,3).parallel().reduce(1, (result, item) -> { return result + item; } , (result, item) -> { //注:只有並行parallel下才會進入此方法 return result + item ; }); System.out.println(str); } //替換Integer::sum測試 public static Integer sumTest(int a1, int a2) { return a1 + a2; } }