java stream一些用法

public static void main(String[] args) {
    List<User> l = Arrays.asList(new User("a", 0), new User("b", 0), new User("c", 1));

    Map<Integer, List<String>> collect = l.stream().collect(Collectors.groupingBy(User::getType, Collectors.mapping(User::getName, Collectors.toList())));
    Map<Integer, Set<String>> collect1 = l.stream().collect(Collectors.groupingBy(User::getType, Collectors.mapping(u -> u.getName() + "qwe", Collectors.toSet())));
    Map<Integer, String> collect2 = l.stream().collect(Collectors.groupingBy(User::getType, Collectors.mapping(User::getName, Collectors.joining(","))));

    System.out.println(collect);
    System.out.println(collect1);
    System.out.println(collect2);
}

@Data
@NoArgsConstructor
@AllArgsConstructor
public static class User {
    private String name;
    private int type;
}

分享

Stream流的使用(保姆级入门教程)_多加点辣也没关系的博客-CSDN博客_stream流


版权声明:本文为qq_29940863原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。