Java的8个流 - 查找最大计数值地图<字符串,列表<对象>>

细观:

我不是很熟悉Java 8并想看看如果我能找到的东西相当于下面的代码使用流。

下面的代码主要是试图寻找其中具有跨越它的值并返回该键的最大数量的关键。我找不到对这种格式有很大帮助的任何地方。

int max = 0;
String maxValuesString = null;
for (Map.Entry<String, List<String>> entry : map.entrySet()) {
    if(max < entry.getValue().size()) {
        maxValuesString = entry.getKey();
        max = entry.getValue().size();
    }
}
ernest_k:

您可以使用max与检查值的大小比较

String maxValuesString = map.entrySet()
            .stream()
            .max(Comparator.comparingInt(entry -> entry.getValue().size()))
            .map(Map.Entry::getKey) 
            .orElse(null);

编辑:由于下面的评论由Andreas的清洁optional.map

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Java8流列表<地图<字符串,对象>> groupingBy和计数值

Java的8流,对象的转换列表地图<字符串,将<字符串>>

收集列表<对象>地图<字符串,列表<对象>>中的Java 8中使用流

变换一个List <对象>的地图<字符串,整数>使得字符串不是使用Java 8流重复值

Java的8个流地图<字符串,列表<字符串值>>为每个关键总和

转换列表对象为使用Java 8个流对象的自定义地图

创建地图字符串和对象在Java中的列表8

Java的8名单<地图<字符串,对象>>到列表<地图<字符串,对象>>的键组和值数

从另一个列表中的列表中查找字符串对象

Java字符串到对象的列表

Java的游戏 - 绑定对象的列表,并附有地图<字符串,AnotherObject>内

在两个对象数组列表中查找唯一字符串

如何将一个POJO的列表转换地图<字符串,列表>在Java流?

从使用Java 8个流API对象列表收集名单

创建使用Java 8流API字符串和排序列表中的地图

Java流列表<地图<字符串,双>>基于字符串需要平均

Javascript:在对象列表中查找字符串

通过字符串在对象列表中查找值

Java的8炼油LAMBDA地图<字符串,列表<字符串>>将字符串地图关键要求

替换Java对象列表中的字符串内容

地图<字符串,地图<字符串,租车>>到列表<汽车>使用Java 8

找到列表中的最大日期对象,其中日期属性是一个字符串

Java流:发行约收集到地图<字符串,对象>

Java。在数组列表中查找字符串长度最大的字符串长度

Java的8流列表<美孚>地图<日期,地图<字符串,龙>>有条件groupingBy

拼合一个地图<整数,列表<字符串>>地图<字符串,整数>用流和lambda

使用LINQ在字符串列表中查找包含字符串的对象

如何压平列表的嵌套地图与Java 8个流?

Java 8流按包含字符串列表的对象进行分组