溫馨提示×

如何在C#中對Map集合進行分組統(tǒng)計

c#
小樊
83
2024-09-04 15:57:36
欄目: 編程語言

在C#中,你可以使用LINQ(Language Integrated Query)來對Map集合(在C#中通常表示為字典,Dictionary)進行分組統(tǒng)計

using System;
using System.Collections.Generic;
using System.Linq;

class Program
{
    static void Main()
    {
        // 創(chuàng)建一個字典,表示Map集合
        Dictionary<string, int> map = new Dictionary<string, int>
        {
            {"A", 1},
            {"B", 2},
            {"A", 3},
            {"C", 4},
            {"B", 5},
            {"A", 6},
            {"C", 7}
        };

        // 使用LINQ對字典進行分組統(tǒng)計
        var groupedStats = from entry in map
                           group entry by entry.Key into g
                           select new
                           {
                               Key = g.Key,
                               Count = g.Count(),
                               Sum = g.Sum(x => x.Value)
                           };

        // 輸出分組統(tǒng)計結(jié)果
        Console.WriteLine("Key | Count | Sum");
        foreach (var group in groupedStats)
        {
            Console.WriteLine($"{group.Key} | {group.Count} | {group.Sum}");
        }
    }
}

這個示例首先創(chuàng)建了一個包含重復(fù)鍵的字典。然后,我們使用LINQ查詢對字典進行分組統(tǒng)計,按照鍵進行分組,并計算每個分組的元素數(shù)量和值的總和。最后,我們將分組統(tǒng)計結(jié)果輸出到控制臺。

注意:在這個示例中,我們使用了一個簡單的字典,其中鍵是字符串類型,值是整數(shù)類型。你可以根據(jù)需要修改代碼以適應(yīng)你的實際情況。

0