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 条评论
登录 后参与评论

相关文章

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

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

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

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

如何对象的多个属性转换为列表<字符串>用java 8

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

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

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

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

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

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

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

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

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

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

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

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

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

Java类扩展的HashMap <字符串,地图<字符串,列表<字符串>>重写方法放不工作

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

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

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

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

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

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

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

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

Java字符串到对象的列表

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