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

溫馨提示×

能否舉例c#中group的應用場景

c#
小樊
82
2024-09-20 08:02:20
欄目: 編程語言

在C#中,GroupBy是一個非常強大的LINQ(Language Integrated Query)方法,它允許你根據某個或某些屬性將集合中的元素進行分組。以下是一些GroupBy在C#中的常見應用場景:

  1. 按類型分組: 假設你有一個對象列表,每個對象都有一個類型屬性,你可以使用GroupBy來按這個類型屬性對這些對象進行分組。

    var people = new List<Person>
    {
        new Person { Name = "Alice", Age = 25, Type = "Student" },
        new Person { Name = "Bob", Age = 30, Type = "Employee" },
        new Person { Name = "Charlie", Age = 25, Type = "Student" },
        new Person { Name = "David", Age = 30, Type = "Employee" }
    };
    
    var groupedPeople = people.GroupBy(p => p.Type);
    
    foreach (var group in groupedPeople)
    {
        Console.WriteLine($"Group: {group.Key}");
        foreach (var person in group)
        {
            Console.WriteLine($"Name: {person.Name}, Age: {person.Age}");
        }
    }
    
  2. 按日期分組: 如果你有一個包含多個日期的對象列表,你可以使用GroupBy來按日期對這些對象進行分組。

    var events = new List<Event>
    {
        new Event { Date = new DateTime(2023, 1, 1), Name = "New Year's Day" },
        new Event { Date = new DateTime(2023, 1, 10), Name = "Rainy Day" },
        new Event { Date = new DateTime(2023, 2, 14), Name = "Valentine's Day" },
        new Event { Date = new DateTime(2023, 2, 14), Name = "Rainy Day" }
    };
    
    var groupedEvents = events.GroupBy(e => e.Date.Date);
    
    foreach (var group in groupedEvents)
    {
        Console.WriteLine($"Date: {group.Key}");
        foreach (var @event in group)
        {
            Console.WriteLine($"Name: {@event.Name}");
        }
    }
    
  3. 按地區分組: 如果你有一個包含多個銷售記錄的對象列表,每個記錄都有一個地區屬性,你可以使用GroupBy來按地區對這些記錄進行分組,并計算每個地區的總銷售額。

    var sales = new List<Sale>
    {
        new Sale { Region = "North", Amount = 1000 },
        new Sale { Region = "South", Amount = 1500 },
        new Sale { Region = "East", Amount = 750 },
        new Sale { Region = "West", Amount = 1250 },
        new Sale { Region = "South", Amount = 500 }
    };
    
    var groupedSales = sales.GroupBy(s => s.Region).ToDictionary(g => g.Key, g => g.Sum(s => s.Amount));
    
    foreach (var region in groupedSales.Keys)
    {
        Console.WriteLine($"Region: {region}, Total Sales: {groupedSales[region]}");
    }
    
  4. 按字符串的首字母分組: 你可以按字符串的首字母對字符串數組進行分組,這在創建字典或進行其他需要分組的操作時非常有用。

    var words = new string[] { "Apple", "Banana", "Cherry", "Date", "Elderberry" };
    
    var groupedWords = words.GroupBy(w => w[0]);
    
    foreach (var group in groupedWords)
    {
        Console.WriteLine($"First Letter: {group.Key}");
        foreach (var word in group)
        {
            Console.WriteLine(word);
        }
    }
    

這些示例展示了GroupBy在C#中的多樣性和實用性。你可以根據你的具體需求調整分組依據和后續操作。

0
南充市| 镇远县| 元江| 讷河市| 广南县| 青海省| 图木舒克市| 清苑县| 阿尔山市| 义马市| 镇赉县| 上犹县| 和林格尔县| 静乐县| 陵水| 武隆县| 哈尔滨市| 兴仁县| 定边县| 宣城市| 惠东县| 岗巴县| 黔东| 太仓市| 霍林郭勒市| 禹州市| 祥云县| 乌鲁木齐市| 北辰区| 屏东市| 平陆县| 栾城县| 绵阳市| 浮梁县| 房产| 澎湖县| 老河口市| 玉环县| 卢龙县| 犍为县| 家居|