Java中Lamda表达式的使用

Alan 812 2022-08-26
  1. 直接获取某个list/array里面对象的某个字段集合。

    List<String> userNames = list.stream().map(User::getUserName).collect(Collectors.toList());
    
  2. 获取某个list/array里面对象的某个字段集合,过滤掉字段为空的。

    List<String> userNames = list.stream().map(User::getUserName).filter(Objects::nonNull).collect(Collectors.toList());
    
  3. 接获取某个list/array里面对象的某个字段集合,并去除重复。

    List<String> userNames = list.stream().map(User::getUserName).collect(Collectors.toList()).stream().distinct().collect(Collectors.toList());
    
  4. 将list/array按照对象的某个字段分组。

    Map<String,List<User>> map = list.stream().collect(Collectors.groupingBy(User::getUserName));