Java 流分组依据和多个字段的总和
2022-09-02 03:25:05
我有一个列表 fooList
class Foo {
private String category;
private int amount;
private int price;
... constructor, getters & setters
}
我想按类别分组,然后对金额和价格进行汇总。
结果将存储在地图中:
Map<Foo, List<Foo>> map = new HashMap<>();
关键是 Foo 保存汇总的金额和价格,并将列表作为具有相同类别的所有对象的值。
到目前为止,我已经尝试了以下内容:
Map<String, List<Foo>> map = fooList.stream().collect(groupingBy(Foo::getCategory()));
现在我只需要将 String 键替换为保存汇总金额和价格的 Foo 对象。这是我陷入困境的地方。我似乎找不到任何方法来做到这一点。