如何通过java中的流获取地图列表值的大小

普里亚

我正在尝试按长度对字符串列表进行分组然后我想计算每个组的数量。我做了第一个,我不能做下一个。如何使用流修复我的代码?

Stream.of(Stream.of("Brad","Jack","Leonardo","Alexander","Juliet","William","Audrey")
                .collect(Collectors.groupingBy(String::length)))
                .forEach(System.out::print);

输出:{4=[布拉德,杰克],6=[朱丽叶,奥黛丽],7=[威廉],8=[莱昂纳多],9=[亚历山大]}

我想要得到的下一件事是每个组的计数。我怎样才能做到这一点?

您可以链接Collectors.counting()

Map<Integer,Long> counts = 
   Stream.of("Brad","Jack","Leonardo","Alexander","Juliet","William","Audrey")
         .collect(Collectors.groupingBy(String::length,
                                        Collectors.counting()));

这将产生以下内容Map

{4=2, 6=2, 7=1, 8=1, 9=1}

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章