C# 如何对数组元素进行分组 如何设置分组条件 简单示例代码
时间: 2024-10-07 14:00:41 浏览: 34
在C#中,可以使用`GroupBy`方法对数组或列表的元素按照指定的条件进行分组。`GroupBy`是 LINQ (Language Integrated Query) 中的一个功能,它将数据分成一系列的分组,每个分组基于共享的关键字(即分组条件)。
首先,你需要确定一个键选择器函数,这个函数用于从每个元素中提取用于分组的属性。例如,如果你有一个学生数组,你想按性别分组,你可以使用`item => item.Gender`作为键选择器。
这是一个简单的示例:
```csharp
// 假设你有这样一个学生数组
List<Student> students = new List<Student>
{
new Student { Name = "Tom", Gender = "Male" },
new Student { Name = "Jerry", Gender = "Male" },
new Student { Name = "Spike", Gender = "Female" },
// 更多学生...
};
// 使用 GroupBy 对数组按性别分组
var genderGroups = students.GroupBy(student => student.Gender);
// 每个分组都是一个IGrouping<TKey,TElement>,其中TKey是你提供的键类型(这里是string),TElement是原始类型的元素
foreach (var group in genderGroups)
{
Console.WriteLine($"性别: {group.Key}");
foreach (Student student in group)
{
Console.WriteLine($"学生名字: {student.Name}");
}
}
阅读全文