中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

LINQ Where子句怎么用

發布時間:2021-12-01 16:53:35 來源:億速云 閱讀:145 作者:小新 欄目:編程語言

小編給大家分享一下LINQ Where子句怎么用,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

LINQ Where子句其實是用擴展方法來實現的

微軟替我們實現的 LINQ Where子句對應的擴展函數實際是如下的定義:

namespace System.Linq  {  public delegate TResult Func(TArg0 arg0, TArg1 arg1);  public static class Enumerable  {  public static IEnumerable Where(this IEnumerable source, Func predicate);  public static IEnumerable Where(this IEnumerable source, Func predicate);  }  }

我們這個擴展函數參數:Func predicate 的定義看上面代碼的綠色delegate 代碼。

LINQ Where子句參數書寫的是Lambda 表達式

(dd, aa) => dd.Length < aa 就相當于 C# 2.0 的匿名函數。

LINQ中所有關鍵字比如 Select,SelectMany, Count, All 等等其實都是用擴展方法來實現的。上面的用法同樣也適用于這些關鍵字子句。這個LINQ Where子句中Lambda 表達式第二個參數是數組索引,我們可以在Lambda 表達式內部使用數組索引。來做一些復雜的判斷。具有數組索引的LINQ關鍵字除了Where還以下幾個Select,SelectMany, Count, All。

Select子句使用數組索引的例子

下面代碼有一個整數數組,我們找出這個數字是否跟他在這個數組的位置一樣

  1. public static void LinqDemo01()  

  2. {  

  3. int[] numbers = { 5, 4, 1, 3, 9, 8, 6, 7, 2, 0 };  

  4. var numsInPlace = numbers.Select((num, index) => 
    new { Num = numInPlace = (num == index) });  

  5. Console.WriteLine("Number: In-place?");  

  6. foreach (var n in numsInPlace)  

  7. Console.WriteLine("{0}: {1}", n.Num, n.InPlace);  

SelectMany 子句使用數組索引的例子

幾個句子組成的數組,我們希望把這幾個句子拆分成單詞,并顯示每個單詞在那個句子中。查詢語句如下:

  1. public static void Demo01()  

  2. {  

  3. string[] text = { "Albert was here",  

  4. "Burke slept late",  

  5. "Connor is happy" };  

  6. var tt = text.SelectMany((s, index) => from ss in s.Split(' ') 
    select new { Word = ssIndex = index });  

  7. foreach (var n in tt)  

  8. Console.WriteLine("{0}:{1}", n.Word,n.Index);  

  9. }  

看完了這篇文章,相信你對“LINQ Where子句怎么用”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

芦溪县| 江门市| 肇源县| 咸丰县| 芜湖县| 连州市| 古交市| 安陆市| 定州市| 东辽县| 鄱阳县| 会东县| 丹阳市| 三明市| 鹰潭市| 湖南省| 武夷山市| 田东县| 比如县| 延长县| 张家川| 当涂县| 四子王旗| 巴彦县| 青海省| 赫章县| 益阳市| 克东县| 昂仁县| 浑源县| 浦北县| 广宗县| 永胜县| 吕梁市| 吉安县| 荔波县| 宁陕县| 苏州市| 瑞昌市| 绥宁县| 宁乡县|