C# Enumerable 類

 Enumerable 類

命名空間:  System.Linq


提供一組用於查詢實現 IEnumerable<T> 的對象的 static(在 Visual Basic 中爲 Shared)方法。


 該類中的方法提供標準查詢運算符的實現,該運算符用於查詢實現 IEnumerable<T> 的數據源。

 標準查詢運算符是通用方法,它們遵循 LINQ(LINQ,語言集成查詢(Language Integrated Query)是一組用於c#和Visual Basic語言的擴展。它允許編寫C#或者Visual Basic代碼以查詢數據庫相同的方式操作內存數據。) 模式,使用它們可以在任何基於 .NET 的編程語言中表示數據的遍歷、篩選和投影運算。

該類中的大多數方法被定義爲擴展 IEnumerable<T> 的擴展方法。 這意味着可以像調用實現 IEnumerable<T> 的任意對象上的實例方法一樣調用它們。
只有枚舉查詢對象時,返回一個值序列的查詢所使用的方法才使用目標數據。 這就是延遲執行。 返回單一實例值的查詢所使用的方法可立即執行和使用目標數據。


示例:

            int[] arr = new[] { 1, 2, 3, 4, 5 };
            // 求和
            int sum = arr.Sum();  // sum = 15
            // 求最大值
            int max = arr.Max();  // max = 5
            // 滿足條件的最大值
            int maxCon = arr.Max(a =>
            {
                if (a < 4) return a;
                return 0;
            }); // maxCon = 3
            // 尋找第一個元素
            int first = arr.FirstOrDefault(); // first = 1
            //尋找滿足條件的元素
            int firstCon = arr.FirstOrDefault(a => a > 2); // firstCon = 3
            // 靜態數組轉動態
            List<int> list = arr.ToList();
            //數組中的數是否全爲正數
            bool isPositiveNumber = arr.All(a => a > 0);
            // 對於List 同樣適用




Enumerable 類中涉及各種方法在此就不一一列出了


 參考: https://msdn.microsoft.com/zh-cn/library/system.linq.enumerable(v=vs.110).aspx
發佈了37 篇原創文章 · 獲贊 16 · 訪問量 8萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章