国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

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

Lambda表達式淺談-01

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

已經有一段時間沒有發布博文了...

今天就寫一寫lambda的一些簡單的使用方法

Lambda 在Msdn 上的描述:

Lambda 表達式是一種可用于創建委托或表達式目錄樹類型的匿名函數。 通過使用 lambda 表達式,可以寫入可作為參數傳遞或作為函數調用值返回的本地函數。 Lambda 表達式對于編寫 LINQ 查詢表達式特別有用。

若要創建 Lambda 表達式,需要在 Lambda 運算符 => 左側指定輸入參數(如果有),然后在另一側輸入表達式或語句塊。 例如,lambda 表達式 x => x * x 指定名為 x 的參數并返回 x 的平方值。

 

其實Lambda中是使用委托,下面可以寫一個Demo 來驗證它是如何使用的

下面是寫的測試代碼

        static D d;        static D2 d2;        static D3 d3;        static void Main(string[] args)        {            int j = 0;            //使用委托的方式            d = () => { j = 10; return j > 3; };            d2 = (x) => { return x == j; };            d3 = (x) => { x += 1; };                         //Lambda            Func<bool> fd = () => { j = 10; return j > 3; };            Func<int, bool> fd2 = (x) => { return x == j; };            Action<int> fd3 = (x) => { x += 1; };        }     }

  

通過反編譯之后的源碼

從源碼看得出Lambda表達式的實質上是以委托的形式傳遞的

要注意的一點:

  • Action<T1, &hellip;, T16> 可以接收1個到16個參數的無返回值泛型委托
  • Func<T1, …, T16, Tout> 可以接收0到16個參數并且有返回值的泛型委托

 

就寫到這吧,或許講述的不到位。如果有不妥,還請指正。謝謝支持。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 汨罗市| 农安县| 乐陵市| 克山县| 潮州市| 嘉兴市| 门源| 绥阳县| 砀山县| 黄大仙区| 新乡市| 邳州市| 广南县| 布尔津县| 凤冈县| 永泰县| 阿拉善右旗| 沈阳市| 油尖旺区| 黄大仙区| 博罗县| 尚志市| 留坝县| 益阳市| 大化| 德江县| 裕民县| 苏尼特右旗| 梓潼县| 临潭县| 论坛| 札达县| 巴彦淖尔市| 西平县| 保靖县| 定远县| 芦山县| 峨边| 建湖县| 织金县| 宁强县|