亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

java中stream分組求和的方法是什么

小億
322
2024-02-21 12:27:21
欄目: 編程語言

在Java中,可以使用Stream API中的Collectors.groupingBy方法對數據流進行分組,然后結合Collectors.summingIntCollectors.summingLongCollectors.summingDouble方法來對分組后的數據進行求和操作。

下面是一個示例代碼,演示如何對一個包含多個對象的數據流按照某個屬性進行分組,并對每個分組進行求和操作:

import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;

class Item {
    String category;
    int amount;

    public Item(String category, int amount) {
        this.category = category;
        this.amount = amount;
    }

    public String getCategory() {
        return category;
    }

    public int getAmount() {
        return amount;
    }
}

public class Main {
    public static void main(String[] args) {
        List<Item> items = Arrays.asList(
                new Item("A", 10),
                new Item("B", 20),
                new Item("A", 30),
                new Item("B", 40),
                new Item("A", 50)
        );

        // 按照 category 分組,并對每個分組的 amount 求和
        Map<String, Integer> sumByCategory = items.stream()
                .collect(Collectors.groupingBy(Item::getCategory, Collectors.summingInt(Item::getAmount)));

        System.out.println(sumByCategory);
    }
}

以上代碼將輸出一個包含不同category的總和的Map:

{A=90, B=60}

0
罗山县| 合阳县| 沁水县| 许昌县| 武穴市| 萝北县| 德阳市| 沽源县| 荆门市| 东台市| 西安市| 澜沧| 宜都市| 咸阳市| 林西县| 获嘉县| 西峡县| 绩溪县| 沙坪坝区| 高邮市| 蒙城县| 吴江市| 绥中县| 北宁市| 平凉市| 惠东县| 浏阳市| 太仆寺旗| 浮山县| 福贡县| 新津县| 铜山县| 那曲县| 贵溪市| 亚东县| 明光市| 华亭县| 土默特右旗| 乌恰县| 磐安县| 浏阳市|