亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

Linq之Lambda表達式初步認識

2019-11-14 15:57:41
字體:
來源:轉載
供稿:網友

匿名方法

  匿名方法顧名思義,是沒有名字的方法,但是仍有方法體,仍能干活。在很多地方可能你都見過它,比如js中,用的最多!

  看看Msdn給的說法:

在 2.0 之前的 C# 版本中,聲明委托的唯一方法是使用命名方法。 C# 2.0 引入了匿名方法,而在 C# 3.0 及更高版本中,Lambda 表達式取代了匿名方法,作為編寫內聯代碼的首選方式。 不過,本主題中有關匿名方法的信息同樣也適用于 Lambda 表達式。 有一種情況下,匿名方法提供了 Lambda 表達式中所沒有的功能。 您可使用匿名方法來忽略參數列表。 這意味著匿名方法可轉換為具有各種簽名的委托。 這對于 Lambda 表達式來說是不可能的。

  一個例子

namespace Wolfy.LinqDemo{    /// <summary>    /// 創建一個委托Del    /// </summary>    /// <param name="x">參數</param>    public delegate void Del(int x);    class PRogram    {        static void Main(string[] args)        {            //使用匿名方法創建一個委托對象d            Del d = delegate(int x)            {                Console.WriteLine(x);            };        }    }}

通過使用匿名方法,由于您不必創建單獨的方法,因此減少了實例化委托所需的編碼系統開銷。

  例如,線程類即可創建一個線程并且包含該線程執行的代碼。

             Thread thread = new Thread(                 delegate()                 {                     //方法體                     Console.WriteLine("Hello world");                 });

  可以更直白的這樣理解,如果該方法就使用那么一次,那么就可以使用匿名方法。

  Lambda

  定義

Lambda 表達式是一種可用于創建委托或表達式目錄樹類型的匿名函數。

若要創建 Lambda 表達式,需要在 Lambda 運算符 => 左側指定輸入參數(如果有),然后在另一側輸入表達式或語句塊。

  一個例子

/// <summary>    /// 創建一個委托Del    /// </summary>    /// <param name="x">參數</param>    public delegate void Del(int x);    class Program    {        static void Main(string[] args)        {            Del del = x => Console.WriteLine(x * x);            del(2);//4            Console.Read();        }    }

  若要創建表達式目錄樹,可以這樣:

/// <summary>    /// 創建一個委托Del    /// </summary>    /// <param name="x">參數</param>    public delegate void Del(int x);    class Program    {        static void Main(string[] args)        {            Del del = x => Console.WriteLine(x * x);            del(2);//4            System.Linq.Expressions.Expression<Del> expression = x => Console.WriteLine(x);            Console.Read();        }    }

  上面的例子創建了一個表達式目錄樹對象expression,由于Del委托是沒有返回值的,這里是將其直接輸出。

  表達式Lambda

  表達式位于 => 運算符右側的 lambda 表達式稱為“表達式 lambda”。表達式 lambda 會返回表達式的結果,并采用以下基本形式:

(input parameters) => expression

  注意:僅當 lambda 只有一個輸入參數時,括號才是可選的;否則括號是必需的。 括號內的兩個或更多輸入參數使用逗號加以分隔:

 (x, y) => x == y
             //有時,編譯器難以或無法推斷輸入類型。 如果出現這種情況,你可以按以下示例中所示方式顯式指定類型             (int x, string s) => s.Length > x             //使用空括號指定零個輸入參數             () => SomeMethod()

  語句Lambda

  語句 lambda 與表達式 lambda 表達式類似,只是語句括在大括號中

 (input parameters) => {statement;}

  statement(語句Lambda)可以包含任意數量的語句,但通常不會多于兩個或三個。

  一個例子

namespace Wolfy.LinqDemo{    /// <summary>    /// 創建一個委托Del    /// </summary>    /// <param name="x">參數</param>    public delegate void Del(string strName);    class Program    {        static void Main(string[] args)        {            Del d = x =>            {                string s = "Hello" + " " + x;                Console.WriteLine(s);            };            d("wolfy");            Console.Read();        }    }}

注意

像匿名方法一樣,語句 lambda 也不能用于創建表達式目錄樹

  總結

  這里對Lambda及匿名方法做了一個簡單介紹。雖然在項目中也經常使用,但是對Lambda的基礎知識,還是需要補一補。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
精品国产91久久久久久老师| 国产一区二区三区网站| 美女av一区二区| 亚洲国产天堂网精品网站| 久久精品亚洲94久久精品| 成人性生交大片免费观看嘿嘿视频| 成人激情视频免费在线| 黑人巨大精品欧美一区免费视频| 久久久噜噜噜久噜久久| 国产成人福利网站| 亚洲人午夜精品免费| 日韩中文第一页| 2020久久国产精品| 日韩欧美国产骚| 亚洲自拍偷拍在线| 亚洲一区二区三区香蕉| 欧美壮男野外gaytube| 91po在线观看91精品国产性色| 欧美日韩国产中文精品字幕自在自线| 国产精品永久免费观看| 日韩免费观看在线观看| 亚洲一区二区三区毛片| 中文字幕亚洲情99在线| 在线播放国产精品| 日韩精品亚洲元码| 国产精品久久久久一区二区| 国产精品av网站| 粗暴蹂躏中文一区二区三区| 欧美激情啊啊啊| 懂色aⅴ精品一区二区三区蜜月| 久久久国产一区二区三区| 日韩av影视在线| 91大神在线播放精品| 91精品国产777在线观看| 久久亚洲精品国产亚洲老地址| 精品久久中文字幕久久av| 国内精品视频一区| 精品福利在线观看| 亚洲第一精品夜夜躁人人躁| 欧美成人激情视频| 久久色精品视频| 日韩精品中文字幕视频在线| 久久久女人电视剧免费播放下载| 97超级碰碰碰久久久| 蜜月aⅴ免费一区二区三区| 久久国产加勒比精品无码| 久久久久久久久久久91| 高清欧美性猛交| 日韩不卡在线观看| 国产精品久久久久av免费| 亚洲网站在线播放| 国产精品欧美日韩一区二区| 欧美疯狂xxxx大交乱88av| 亚洲欧美视频在线| 久久午夜a级毛片| 欧美天天综合色影久久精品| 在线播放日韩欧美| 国产va免费精品高清在线观看| 日韩av在线免播放器| 91精品国产综合久久香蕉最新版| 亚洲一区二区三区777| 欧美丰满少妇xxxxx做受| 欧美大片在线看| 亚洲第一男人天堂| 最好看的2019的中文字幕视频| 清纯唯美亚洲激情| 国产一区二区香蕉| 中文字幕欧美日韩va免费视频| 久久国产精品影片| 97久久精品视频| 中文国产成人精品久久一| 精品国产成人av| 亚洲国产91色在线| 亚洲免费人成在线视频观看| 亚洲欧美日韩网| 国产精品自产拍在线观| 国产欧美一区二区三区视频| 欧美日韩中文在线观看| 亚洲视频在线免费看| 国产成人精品电影久久久| 国产丝袜精品视频| 午夜精品一区二区三区在线视频| 久久久久亚洲精品成人网小说| 久久人体大胆视频| 中文字幕精品在线| 亚洲国产精品久久久| 欧美国产日韩在线| 日韩欧美在线视频日韩欧美在线视频| 欧美成人精品在线视频| 亚洲美女www午夜| 欧美激情在线观看视频| 欧美日韩国产黄| 麻豆精品精华液| 97国产精品免费视频| 日本久久中文字幕| 亚洲欧美中文字幕| 国产精品久久久久7777婷婷| 久久精品视频中文字幕| 136fldh精品导航福利| 午夜精品一区二区三区在线视| 欧美在线中文字幕| 欧美精品第一页在线播放| 26uuu亚洲伊人春色| 久久久久久久久网站| 亚洲最大激情中文字幕| 九九精品在线观看| 精品国内自产拍在线观看| 成人有码视频在线播放| **欧美日韩vr在线| 欧美大片免费观看在线观看网站推荐| 久久99青青精品免费观看| 日日噜噜噜夜夜爽亚洲精品| 亚洲成人精品久久久| 亚洲天堂男人天堂女人天堂| 伊人久久综合97精品| 国产综合视频在线观看| 国产香蕉97碰碰久久人人| 日韩在线观看免费高清完整版| 久久久999国产精品| 成人免费xxxxx在线观看| 国产精品96久久久久久又黄又硬| 伊人伊人伊人久久| 97精品国产97久久久久久| 国产精品免费久久久久久| 国产日韩在线精品av| 亚洲欧美国产一本综合首页| 亚洲第一福利网| 午夜精品一区二区三区在线视频| 91久久精品美女高潮| 国产欧美一区二区| 51久久精品夜色国产麻豆| 国产免费观看久久黄| 欧美精品一区在线播放| 精品久久久一区| 成人在线播放av| 亚洲午夜女主播在线直播| 欧美亚洲在线视频| 精品国产91久久久久久老师| 欧美性猛交xxxx乱大交蜜桃| 亚洲人av在线影院| 亚洲精品电影网在线观看| 国内精品400部情侣激情| 97在线视频一区| 国产999在线| 北条麻妃一区二区在线观看| 国产精欧美一区二区三区| 国产成人综合一区二区三区| 久久影院资源站| 国产精品高潮呻吟久久av无限| 欧美整片在线观看| 欧美激情综合色综合啪啪五月| 亚洲免费av电影| 亚洲国产日韩欧美综合久久| 欧美日韩国产一中文字不卡| 69久久夜色精品国产69乱青草| 国产精品久久久久久婷婷天堂| 久久99热这里只有精品国产| 日韩精品免费在线观看| 亚洲成人久久久| 欧美中文在线字幕| 久久久久亚洲精品| 亚洲最大成人免费视频| 中文字幕久久精品| 日韩在线视频中文字幕|