C#程式:演示LINQ Aggregate()方法的用法
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("The sum of the sequence is: {0}", sum); } }
在此程式碼中,我們有一個名為 numbers 的整數陣列。我們使用 Aggregate() 方法透過傳遞一個將兩個元素加在一起的 lambda 表示式來計算序列的總和。
輸出
The sum of the sequence is: 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("The product of the sequence is: {0}", product); } }
在此程式碼中,我們有一個名為 numbers 的整數陣列。我們使用 Aggregate() 方法透過傳遞初始值為 1 和一個將兩個元素相乘的 lambda 表示式來計算序列的乘積。
輸出
The product of the sequence is: 120
結論
Aggregate() 方法是一個強大的 LINQ 方法,可用於對元素序列執行歸約操作。在本文中,我們探討了如何在 C# 程式中使用 Aggregate() 方法來查詢數字序列的總和和乘積。
廣告