c# list集合groupby
时间: 2023-08-29 11:12:56 浏览: 272
在C#中,可以使用List集合的GroupBy方法来对集合中的元素进行分组。GroupBy方法根据指定的键选择器将集合中的元素分组,并返回一个包含分组结果的IEnumerable<IGrouping<TKey, TElement>>对象。
下面是一个示例代码,演示如何使用GroupBy方法对List集合进行分组:
```csharp
using System;
using System.Collections.Generic;
using System.Linq;
class Program
{
static void Main()
{
List<string> fruits = new List<string>
{
"apple", "banana", "cherry", "apple", "banana", "apple"
};
var groups = fruits.GroupBy(fruit => fruit);
foreach (var group in groups)
{
Console.WriteLine($"Key: {group.Key}");
Console.WriteLine($"Count: {group.Count()}");
Console.WriteLine($"Values: {string.Join(", ", group)}");
Console.WriteLine();
}
}
}
```
在这个示例中,我们创建了一个包含水果名称的List集合。然后,我们使用GroupBy方法将水果按照名称进行分组。每个分组都是一个IGrouping<string, string>对象,其中键是水果的名称,而值是具有相同名称的水果元素。
在循环中,我们访问每个分组的键、计数和值,并将它们打印出来。
输出将是:
```
Key: apple
Count: 3
Values: apple, apple, apple
Key: banana
Count: 2
Values: banana, banana
Key: cherry
Count: 1
Values: cherry
```
希望这个示例能帮助你理解如何在C#中使用List集合的GroupBy方法进行分组。
阅读全文