int[] arr=newint[]{5,1,3,4,1};//若统计的是int数组,先转化为ListList<Integer> list= Arrays.stream(arr).boxed().collect(Collectors.toList());//groupingBy分组Map<Integer, Long>map= list.stream().collect(Collectors.groupingBy(Function.identity(), Collectors.counting()));//控制台输出mapma...
// map id对应单个实体类组成map Map<Long, UserPo> scheduleMap = list.stream().collect(Collectors.toMap(UserPo::getUserId, Function.identity())); // 将学生姓名集合串成字符串,用逗号分隔 String nameString = list.stream().map(p -> p.getName()).collect(Collectors.joining(",")); System....
也许在有些文章里面有人告诉你identity是reduce的初始化值,可以随便指定,如下所示: Integer result2=intList.stream().reduce(100, Integer::sum); log.info("{}",result2); 上面的例子,我们计算的值是106。 如果我们将stream改成parallelStream: Integer result3=intList.parallelStream().reduce(100, Integer:...
主要负责新建一个 Stream 流,或者基于现有的数组、List、Set、Map 等集合类型对象创建出新的 Stream 流。 中间管道 负责对 Stream 进行处理操作,并返回一个新的 Stream 对象,中间管道操作可以进行叠加。 终止管道 顾名思义,通过终止管道操作之后,Stream 流将会结束,最后可能会执行某些逻辑处理,或者是按照要求返回某些...
Map<Integer,String> userMap1 = userList.stream().collect(Collectors.toMap(User::getId,User::getName)); 2、指定key-value,value是对象本身,User->User 是一个返回本身的lambda表达式 Map<Integer,User> userMap2 = userList.stream().collect(Collectors.toMap(User::getId,User->User)); ...
cityList=cityList.stream().map(city->city.split(";")).flatMap(Arrays::stream).collect(Collectors.toList());//遍历城市列表cityList.forEach(System.out::println);} 执行结果: 1.5 distinct() 使用distinct() 方法可以去除重复的数据。 【示例】获取部门列表,并去除重复数据。
List Word Count publicstaticvoidmain(String[]args){List<String>list=Arrays.asList("beijing shanghai guangzhou","beijing guangzhou","beijing","beijing");Map<String,Long>collect=list.stream().flatMap(o->Stream.of(o.split(" "))).collect(Collectors.groupingBy(o->o,Collectors.counting()));Syst...
1)创建流 stream() / parallelStream() stream() : 串行流 parallelStream(): 并行流 2)filter 过滤(T-> boolean) 比如要过滤年龄在40岁以上的用户,就可以这样写: List<User> filterList = list.stream().filter(user -> user.getAge() >= 40) ...
import java.util.Arrays; import java.util.List; import java.util.Map; import java.util.stream.Collectors; public class Main { public static void main(String[] args) { List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 1, 2, 3, 4, 1); Map<Integer, Long> countByNumber = nu...
java8 stream流操作实现List Count/Word Count 话不多说,直接上代码 List Count 代码语言:javascript 复制 publicstaticvoidmain(String[]args){List<String>list=Arrays.asList("beijing","shanghai","guangzhou","shenzhen","beijing");Map<String,Long>collect=list.stream().collect(Collectors.groupingBy(o->...