在哈希映射中查找值的数量?
2022-09-05 00:35:08
在Java 8中,您还可以使用API:Stream
int total = map.values()
.stream()
.mapToInt(List::size) // or (l -> l.size())
.sum()
这样做的好处是,您不必像在 Java 8 之前的解决方案中那样重复变量的类型:List<Foo>
for
int total = 0;
for (List<Foo> list : map.values())
{
total += list.size();
}
System.out.println(total);
除此之外,尽管不建议这样做,但您也可以在不需要临时变量的情况下以内联方式使用该值:
System.out.println(map.values().stream().mapToInt(List::size).sum());
最简单的方法是迭代并添加列表大小。
int total = 0;
for (List<Foo> l : map.values()) {
total += l.size();
}
// here is the total values size