<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      你知道C#中的Lambda表達式的演化過程嗎?

      那得從很久很久以前說起了,記得那個時候...

      懵懂的記得從前有個叫委托的東西是那么的高深難懂。

      委托的使用

      例一:

      什么是委托?

      個人理解:用來傳遞方法的類型。(用來傳遞數字的類型有int、float、double,用來傳遞方法的就有委托

      例二:

      又經過了很久很久...

      匿名方法

      很多時候委托接收的方法是一次性的或者方法體是非常簡單的...

      例三:

      我們可以寫成:

      有沒有發現我們每次都要定義委托,很多時候簽名可能是一樣的。這樣就沒有必要定義重復的。

      然后又過了很久很久...

      Func和Action

      可能老大也覺得我們每次定義委托有點傻,所以干脆在框架內一次定義好所有可能用到的委托。那千變萬化的方法簽名怎么可能定義得全?沒關系,定義成泛型的不就可以了嗎。

      先說Func:

      細心的朋友可能看到了,Func相對于AddDelegate多定義了一個int。多出了的那個是指的是返回類型。我們F12看對應的定義:

      關于上面Func的寫法我們可以簡寫成:(語法糖而已,編譯后還是注釋的代碼

      再看Action:

      提醒:以后如果我們寫代碼的時候如果寫到到delegate...,你要馬上想到是否可以用Func或者Action來代替呢?C#4中的Action和Func有16個參數,足夠你用了。

      我們等了又等,又過了好久好久...

      Lambda的誕生

      我XX,這TM就是親兄弟啊。直接去掉delegate關鍵字,然后加一個=>就成了lambda表達式了。=>讀作goes to

      我們繼續簡化:

      丟掉參數類型也是可以的,因為強大的VS可以根據泛型委托Func自己推斷出來參數類型。

      還可以簡化嗎?當然:

      return關鍵字也不要了,大括號也不要了。(當然,方法體只有單條語句才能怎么做

      現在看起來已經非常接*我們*時用的Lambda表達式了。

      如果傳入參數只有一個的話,我們還可以繼續簡化:

      這就是我們*時見得最多的lambda長相了。

      要長成這樣也是有要求的:

      1. 只能有一個傳入參數
      2. 方法體只能只一條語句。

      關于第1點,lambda我們*時用得較多的是基于IEnumerable或IQueryable,所以只能有一個參數也就滿足了。

      關于第2點,我們使用擴展方法的鏈式編程來解決。

      如:(用鏈式來解決第二點)

      從此,我們過上了幸福的生活...

       

      借《深入理解C#》中的一圖:

       

      小知識:(異步Lambda)

      Func<Student, Task<bool>> func = async t =>
      {
          await Task.Delay(100);//等待100毫秒
          return false;
      };

       

      結束:

      本文簡短的說了下lambda表達式在C#中的一步步演化。說的不一定對,輕拍!

      本文以同步至《C#基礎知識鞏固系列

      posted @ 2016-08-16 08:31  農碼一生  閱讀(14222)  評論(29)    收藏  舉報
      .
      主站蜘蛛池模板: 久久99久国产精品66| 那曲县| 日韩人妻无码一区二区三区| 精品无码一区在线观看| 精品中文人妻在线不卡| 色综合久久中文综合久久激情| 亚洲精品一二三区在线看| 国产欧美性成人精品午夜| 国产成人片无码视频在线观看 | 性欧洲大肥性欧洲大肥女| 国产尤物精品自在拍视频首页| 亚洲综合伊人五月天中文| 亚洲欧美综合人成在线| 无套内射极品少妇chinese| 亚洲av激情一区二区三区| 大香蕉av一区二区三区| 国产精品va无码一区二区| 在线观看视频一区二区三区| 男人扒开添女人下部免费视频| 国产玩具酱一区二区三区| 少妇一边呻吟一边说使劲视频| 国偷自产一区二区三区在线视频 | 激情综合色五月丁香六月亚洲| 日本极品少妇videossexhd| 久久天天躁狠狠躁夜夜2020老熟妇| 2021AV在线无码最新| 久久精品国产亚洲av天海翼 | 远安县| 麻豆国产97在线 | 欧美| 九九热在线精品视频观看| 久久久无码精品亚洲日韩蜜臀浪潮| 亚洲欧美在线观看品| 久久老熟女一区二区蜜臀| 啪啪av一区二区三区| 人妻无码∧V一区二区| 日韩精品一区二区三区久| 国内精品视频区在线2021| 国产精品偷伦费观看一次| 国产精品妇女一区二区三区| 色综合久久久久综合体桃花网| 日本精品极品视频在线|