我正在尝试按长度对字符串列表进行分组。然后我想计算每个组的数量。我做了第一个,我不能做下一个。如何使用流修复我的代码?
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] 删除。
我来说两句