C# 程序展示 LINQ Aggregate() 方法的用法
csharpserver side programmingprogramming更新于 2025/9/16 11:37:00
Aggregate() 方法是一种功能强大的 LINQ 方法,可让您对元素序列执行缩减操作。此方法可用于对数据集合执行计算,例如查找一组数字的总和、乘积或最大值。在本文中,我们将探讨如何在 C# 程序中使用 Aggregate() 方法。
什么是 Aggregate() 方法?
Aggregate() 方法是一种 LINQ 扩展方法,它采用两个参数:一个种子值和一个对元素序列执行缩减操作的函数。种子值是操作的初始值,函数指定如何将序列中的每个元素与之前的结果组合起来。
Aggregate() 方法的语法
public static TAccumulate Aggregate<TSource, TAccumulate>(this IEnumerable<TSource> source, TAccumulate seed, Func<TAccumulate, TSource, TAccumulate> func)
示例:使用 Aggregate() 方法求数字序列的总和
让我们看一个例子,了解如何使用 Aggregate() 方法求数字序列的总和。
using System.IO;
using System;
using System.Linq;
class Program {
static void Main(string[] args) {
int[] numbers = { 1, 2, 3, 4, 5 };
int sum = numbers.Aggregate((x, y) => x + y);
Console.WriteLine("序列的总和为: {0}", sum);
}
}
在此代码中,我们有一个名为numbers的整数数组。我们使用Aggregate()方法通过传递将两个元素相加的lambda表达式来计算序列的总和。
输出
序列的总和为:15
示例:使用Aggregate()方法查找数字序列的乘积
现在,让我们看一个如何使用Aggregate()方法查找数字序列的乘积的示例。
using System;
using System.Linq;
class Program {
static void Main() {
int[] numbers = { 1, 2, 3, 4, 5 };
int product = numbers.Aggregate(1, (x, y) => x * y);
Console.WriteLine("序列的乘积为: {0}", product);
}
}
在此代码中,我们有一个名为numbers的整数数组。我们使用Aggregate()方法通过传递初始值1和将两个元素相乘的lambda表达式来计算序列的乘积。
输出
序列的乘积为:120
结论
Aggregate()方法是一种功能强大的LINQ方法,可用于对元素序列执行归约操作。在本文中,我们探讨了如何在C#程序中使用Aggregate()方法来查找数字序列的和与乘积。

