简介:这里先开始记录,常用的stream流可以干的事情
1.用于去除重复:
deptNames.parallelStream().distinct().collect(Collectors.toList()))
2.使用stream().of方法实现对数据从list到set之间的转换具体代码如下:
List<String> list = Stream.of(testStrings).collect(Collectors.toList());
3.使用stream().map的方法,将一种类型的值映射为另一种类型的值,可以将 Stream 中的每个值都映射为一个新的值,最终转换为一个新的 Stream 流。
List<String> list = Stream.of(testStrings).map(String -> String.toUpperCase()).collect(Collectors.toList());
4.使用filter对数据筛选,返回满足条件的stream流
long count = Stream.of(testStrings).filter(String -> String.contains("o")).count();
这里的count是一个终止条件,会返回满足条件的数据条数
5.flatMap操作,将多个流合并成一个流的操作
List<Integer> list = Stream.of(Arrays.asList(1, 2, 3, 4, 5, 6), Arrays.asList(5, 6, 7, 8)).flatMap(str -> str.stream()).collect(Collectors.toList());
6.stream中的最大值和最小值 max,min
Integer[] integers = {1,2,2,5,7,45,7};
Optional<Integer> max = Stream.of(integers).max((p1,p2) ->Integer.compare(p1,p2));
System.out.println(max);
7.stream流中的Stream 的一组值中生成另一个值。使用count ,reduce,max方法实现
Integer[] integers = {1,2,2,5,7,45,7};
Integer reduce = Stream.of(integers).reduce(0, (accumulator, element) -> accumulator + element);
这里转载一个关注博主的文章
https://blog.youkuaiyun.com/sd09044901guic/article/details/85051720