温馨提示×

C#中groupby的作用是什么

c#
小亿
132
2024-02-05 10:24:40
栏目: 编程语言

在C#中,GroupBy的作用是根据指定的键将集合中的元素分组。它返回一个根据键分组的序列,每个组包含具有相同键的元素。

GroupBy方法可以应用于任何实现了IEnumerable接口的集合,包括数组、列表和查询结果等。可以使用lambda表达式或委托来指定分组的键。

在返回的分组序列中,每个元素都是一个IGrouping<TKey, TElement>对象,其中TKey是分组的键类型,TElement是分组的元素类型。IGrouping<TKey, TElement>提供了对分组键和分组元素的访问。

通过使用GroupBy方法,可以轻松地对集合中的元素进行分组操作,以便进行进一步的处理、分析或聚合。例如,可以使用GroupBy方法对学生按照班级进行分组,对订单按照客户进行分组,对产品按照类别进行分组等。

以下是一个示例,演示如何使用GroupBy方法对整数列表按照奇偶进行分组:

List<int> numbers = new List<int> { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };

var groups = numbers.GroupBy(x => x % 2 == 0 ? "偶数" : "奇数");

foreach (var group in groups)
{
    Console.WriteLine($"Key: {group.Key}");

    foreach (var number in group)
    {
        Console.WriteLine(number);
    }
}

输出结果为:

Key: 奇数
1
3
5
7
9
Key: 偶数
2
4
6
8
10

可以看到,元素被成功地按照奇偶进行了分组。每个分组包含一个键和相应的元素。

0