当前位置: 首页 > 知识库问答 >
问题:

按相同元素分组的Java流

李俭
2023-03-14

我有一个单词流,我想根据相同元素的出现对它们进行排序

例如:{hello,world,hello}

Map<String, List<String>>

你好,{你好,你好}

Map<Object, List<String>> list = streamofWords.collect(Collectors.groupingBy(???));

谢谢你

共有1个答案

江衡
2023-03-14

您正在搜索的KeyExtractor是标识函数:

Map<String, List<String>> list = streamofWords.collect(Collectors.groupingBy(Function.identity()));
  • function.identity()使用一个方法重弹“function”,该方法仅返回它获得的参数。
  • Collectors.GroupingBy(Function keyExtractor) 提供一个收集器,它将流的所有元素收集到映射 。它使用获得的keyExtractor实现来检查流的S类型的对象,并从这些对象中推导出K类型的键。此键是映射的键,用于获取(或创建)流元素添加到的结果映射中的列表。
 类似资料:
  • 我有下面的xml结构: 有不同的 Field(X) 包装器元素,它们包含相同的用户元素。XML 中可以发送 n 个字段。因此,我不能为每个单独的Jaxb。我需要访问用户,但在取消编组步骤后忽略 Field 元素。不幸的是,我无权更改xml结构。我无法找到解决方案。任何指针都会有所帮助。

  • 问题 你想从数组中删除相同元素。 解决方案 Array::unique = -> output = {} output[@[key]] = @[key] for key in [0...@length] value for key, value of output [1,1,2,2,2,3,4,5,6,6,6,"a","a","b","d","b","c"].unique() # =

  • 我有一个练习,找出出了什么问题。我会感激的帮助:) 编写将具有两个int类型数组和更大的返回数组(如果两个数组中的一个更大)以及与数组相同位置的元素的总和的代码。

  • 本文向大家介绍多组中相同索引处的Python组元素,包括了多组中相同索引处的Python组元素的使用技巧和注意事项,需要的朋友参考一下 在本教程中,我们将编写一个程序,将相同索引的元素,不同列表组合到一个列表中。这里有一个约束。所有列表的长度必须相同。让我们看一个例子来更清楚地理解它。 输入值 输出结果 我们可以用不同的方式解决它。让我们看看如何用普通循环解决。 用列表初始化列表。 初始化一个空列