C# 如何对数组元素进行分组 简单示例代码
时间: 2024-10-06 09:02:54 浏览: 35
在C#中,你可以使用`LINQ(Language Integrated Query)`库提供的`GroupBy`方法对数组元素进行分组。`GroupBy`允许你按照某个键值对元素进行分类,返回的是一个`IGrouping<TKey, TElement>`类型的集合,其中`TKey`是你指定的键类型,`TElement`是原始元素类型。
以下是一个简单的示例代码,假设我们有一个整数数组,我们想要按每个数字的奇偶性将其分组:
```csharp
using System;
using System.Linq;
class Program
{
static void Main()
{
int[] numbers = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
// 使用 GroupBy 分组
var groupedNumbers = numbers.GroupBy(n => n % 2 == 0);
// 输出每个组及其元素
foreach (var group in groupedNumbers)
{
Console.WriteLine($"偶数组: [{string.Join(", ", group)}]");
}
foreach (var group in groupedNumbers.Where(g => g.Key)) // 过滤出只有偶数的组
{
Console.WriteLine($"奇数组: [{string.Join(", ", group)}]");
}
}
}
```
在这个例子中,`group.Key`是奇偶性的判断结果(0表示偶数,1表示奇数),而`group`则是对应键值的所有元素。第一个`foreach`循环会打印出所有偶数组,第二个`foreach`则过滤出仅包含奇数的组。
阅读全文