C#核心開發-第17單元-泛型-第6節:聚合函數(最大值、最小值、平均值、總和、顛倒順序)

1. 聚合函數介紹
在C#的泛型列表List<T>中,當T傳入不同的數據類型時,其List<T>對象中可用的方法或屬性也是不一樣的。
那麼,對於泛型列表List<T>實例化時,T是數字類型時,可以使用聚合函數進行一些運算。這些聚合函數使用廣泛,且都是微軟已經為我們封裝好的,我們只需要知道它們的含義及如何調用就可以了。
在C#泛型列表List<T>對象實例中,有如下幾個常見的聚合函數有:
(1). Max():求列表所有數據中的最大值。
(2). Min():求列表所有數據中的最小值。
(3). Average():求列表中所有數據的平均值。
(4). Sum():求列表中所有數據的總和。
(5). Reverse():是將列表中原來數據的順序顛倒一下,是在原列表中顛倒數據順序的,所以此方法會影響原始列表。
2. 編寫代碼
現在,我們使用Visual Studio 2019 IDE開發工具創建一個.NET控制臺應用程式,然後在Main()方法中編寫C#代碼來講解泛型列表List<T>的聚合函數的使用。

在C#泛型列表List<T>中使用聚合函數的完整代碼如下:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace Yidosoft.Edu.Csharp.GenericSets{class Program { static void Main(string[] args) { Console.Title = "泛型列表List<T>的聚合函數 - 一都編程"; List<int> intList = new List<int>(); intList.Add(100); intList.Add(200); intList.Add(300); intList.Add(400); intList.Add(500); //最大值 var max = intList.Max(); //最小值 var min = intList.Min(); //平均值 var avg = intList.Average(); //求和 var sum = intList.Sum(); //顛倒順序,影響原始列表。 intList.Reverse(); Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine($"最大值是:{max}。"); Console.WriteLine($"最小值是:{min}。"); Console.WriteLine($"平均值是:{avg}。"); Console.WriteLine($"總和是:{sum}。"); Console.WriteLine("顛倒後的順序是:"); foreach(var i in intList) { Console.WriteLine(i); } Console.ResetColor(); Console.ReadKey(); } }}
以上這段C#代碼中的聚合函數,其實在講解數組時已經使用過,使用方法是完全一樣的。
3. 運行結果
將上面的C#代碼運行一下,輸出的結果如下:

在圖2中,對於顛倒後的順序也輸出了,使用了foreach遍歷列表,從原列表中的數據從後向前全部輸出了。