Java 如何使用groupingBy返回列表<;字符串,字符串>;

Java 如何使用groupingBy返回列表<;字符串,字符串>;,java,Java,我有一个带有String getGroup()和String getName()方法的GroupUser实例列表。 我想返回一个映射,其中键是组,值是该组的名称列表 如果我使用 Map<String, List<GroupUser>> groupUserList = users.stream() .collect(Collectors.groupingBy(GroupUser::getGroup)); Map-groupUserList=users

我有一个带有
String getGroup()
String getName()
方法的
GroupUser
实例列表。 我想返回一个
映射
,其中键是组,值是该组的名称列表

如果我使用

Map<String, List<GroupUser>> groupUserList = users.stream()
           .collect(Collectors.groupingBy(GroupUser::getGroup));
Map-groupUserList=users.stream()
.collect(Collectors.groupingBy(GroupUser::getGroup));
返回
Map

如何直接获得
映射

您可以获得
映射
,其中键为组,值为名称列表,其中包含:

    Map<String, List<String>> groupUserList = users.stream()
            .collect(
                    Collectors.groupingBy(GroupUser::getGroup, 
                            Collectors.mapping(GroupUser::getName, 
                                    Collectors.toList())));
Map-groupUserList=users.stream()
.收集(
Collectors.groupingBy(GroupUser::getGroup,
Collectors.mapping(GroupUser::getName,
收藏家;
编辑 解释:

查看javadocs,我们发现其中1个重载具有以下特征:

public static Collector groupingBy(函数您可以获得一个
映射
,其中键是组,值是名称列表,其中包含:

    Map<String, List<String>> groupUserList = users.stream()
            .collect(
                    Collectors.groupingBy(GroupUser::getGroup, 
                            Collectors.mapping(GroupUser::getName, 
                                    Collectors.toList())));
Map-groupUserList=users.stream()
.收集(
Collectors.groupingBy(GroupUser::getGroup,
Collectors.mapping(GroupUser::getName,
收藏家;
编辑 解释:

查看javadocs,我们发现其中1个重载具有以下特征:


公共静态收集器分组依据(函数映射中的字符串值应该用什么表示?你说你希望该值是该组的名称列表。为什么你说你希望有
map
,而不是
map
?打字?你是说
map
映射中的字符串值应该用什么表示?你说你希望该值是请列出该组的名称。为什么你说你想要
Map
,而不是
Map
?打字错误?你是指
Map
吗?你能解释一下代码是如何工作的吗?我想这可能有助于学习如何进行一些简单的修改。你能解释一下代码是如何工作的吗?我想可能是他我将学习如何进行一些简单的修改。