最近在学习java8 stream流式处理,据说效率比较高,自己使用了一下觉得还不错,给出例子
1、for循环使用可以分为同步或者异步,效率比for循环要高;
<1> parallelStream为异步循环
List<String> arr = new ArrayList<>();
arr.add("a");
arr.add("b");
arr.add("c");
arr.parallelStream().forEach(str ->{
System.out.println(str);
});
输出:
a
c
b
<2> stream为同步循环
List arr = new ArrayList<>();
arr.add("a");
arr.add("b");
arr.add("c");
arr.stream().forEach(str ->{
System.out.println(str);
});
输出:
a
b
c
2、我们可以将一个集合改为字符串拼接格式
List<String> arr = new ArrayList<>();
arr.add("a");
arr.add("b");
arr.add("c");
String a= arr.stream().collect(Collectors.joining(","));
System.out.println(a);
输出结果:a,b,c
扩展:
String arrStr = arr.stream().collect(Collectors.joining(",", "[", "]"));
System.out.println(arrStr);
输出结果:[a,b,c]