java1.8 lambda进行并行运算
parallelStream()支持并行运算:
package com.roocon.thread.t2; import java.util.Arrays; import java.util.List; public class Demo7 { public static void main(String[] args) { List<String> values = Arrays.asList("1","2","3","4"); print(values); } public static void print(List<String> values){ values.parallelStream().forEach(System.out :: println);//System.out表示对象,println表示方法 } }
运行结果:
3 4 1 2
如果想计算集合中数字的和,也可以使用lambda表达式实现:
package com.roocon.thread.t2; import java.util.Arrays; import java.util.List; public class Demo7 { public static void main(String[] args) { List<String> values = Arrays.asList("1","2","3","4"); System.out.println(add(values)); } public static int add(List<String> values){ return values.parallelStream().mapToInt(i -> Integer.parseInt(i)).sum();//mapToInt方法返回的是一个int的Stream,这样,再次调用stream.sum()得到和 } }
运行结果:
10
作者:凌晨六点半
出处:http://www.cnblogs.com/sunnyDream/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利。
如果您认为这篇文章还不错或者有所收获,您可以通过右边的“打赏”功能 打赏我一杯咖啡【物质支持】,也可以点击右下角的【好文要顶】按钮【精神支持】,因为这两种支持都是我继续写作,分享的最大动力!