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

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

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

      c# lambda表達式詳解

      Lambda表達式本質上就是匿名函數

      使用lambda聲明運算符 =>(讀作goesto)的表達式就是Lambda表達式

      創建Lambda表達式,需要在 Lambda 運算符左側指定輸入參數(如果有),然后在另一側輸入表達式或語句塊。
      即是說我們使用形如 ()=> { } 這樣的格式就可以創建Lambda表達式

      任何 Lambda 表達式都可以轉換為委托類型。 Lambda 表達式可以轉換的委托類型由其參數和返回值的類型定義。 如果 Lambda 表達式不返回值,則可以將其轉換為 Action 委托類型之一;否則,可將其轉換為 Func 委托類型之一。

      1.Lambda表示式的兩種方式
      表達式lambda,表達式為主體
      (input-parameters) => expression
       x => x * 4 //1個參數可省略括號
      語句 lambda,語句塊作為其主體
      (input-parameters) => { <sequence-of-statements> }

      (int x) => { return x * 2; };



         
      public class LambdaTest
          {
              public void Test()
              {
                  //表達式lambda 只有一個表達式,表示這里面只允許有一行代碼
                  Func<int, int> func = x => x * 4;
                  //接收表達式Lambda返回的值
                  int result1 = func(5);
      
                  //在表達式lambda中調用方法
                  func = x => x * Add(3, 2);
                  int result2 = func(5);
              }
      
              public int Add(int x,int y)
              {
                  return x + y;
              }
         
           public void Test() 
           {
      Action
      <int> action = (x) => { Console.WriteLine(x); }; action = (y) => { y *= 4; Console.WriteLine(y); };      } }

       




      2 Lambda表達式的輸入參數
      1)將 lambda 表達式的輸入參數括在括號中。 使用空括號指定零個輸入參數

      如果是沒有參數,必須有這個空括號

      Action line = () => Console.WriteLine();   

      2)如果 lambda 表達式只有一個輸入參數,則括號是可選的:

      如果只有一個輸入參數,則括號可有可無

      Func<double, double> cube = x => x * x * x;

        3)兩個或更多輸入參數使用逗號加以分隔:

      Func<int, int, bool> testForEquality = (x, y) => x == y;
         
      4)有時,編譯器無法推斷輸入參數的類型。 可以顯式指定類型,如下面的示例所示:

      一般情況下,編譯器可自行推斷輸入參數的類型,但存在編譯器無法推斷的情況,則需自行指定。

      Func<int, string, bool> isTooLong = (int x, string s) => s.Length > x;
       
      3.Lambda表達式的發展演變


      public delegate void ShowDelegate(int a,string b);
          public class LambdaEvolution
          {
              public void Show(int a1,string b1)
              {
                  Console.WriteLine($"show{a1}:{b1}");
              }
      
      
      
              public void Test()
              {
                  //1 .Netframework1.0/1.1,原始方法
                  ShowDelegate showDelegate = new ShowDelegate(Show);
      
                  //2 .NetFramework2.0,匿名方法,增加delegate,去掉單獨定義方法
                  showDelegate = delegate (int x,string y) { Console.WriteLine($"show{x}:{y}"); };
      
                  //3 .NetFramework3.0,=> 引入Lambda表達式,去掉delegate
                  showDelegate = (int s,string t) => { Console.WriteLine($"show{s}:{t}"); };
      
                  //4 .NetFramework3.0后期,簡化參數類型,編譯器自動推斷數據類型
                  showDelegate = (s,t) => { Console.WriteLine($"show{s}:{t}"); };
      
                  //5 如果方法體中只有一行代碼,可以省略方法體大括號
                  showDelegate = (s,t) => Console.WriteLine($"show{s}:{t}");
      
                  //如果方法只有一個參數,可以省略參數小括號
                  Action<string> action = x => Console.WriteLine($"show{x}");
      
                  //如果方法體中只有一行代碼,且有返回值,可以省略return
                  Func<int, string> func = x => x.ToString();
      
              }
      
          }

       


      ————————————————
      版權聲明:本文為CSDN博主「鯉籽鯤」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
      原文鏈接:https://blog.csdn.net/qq_39847278/article/details/127525222
      posted @ 2023-04-07 11:34  桃花雪  閱讀(1172)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 国产成人久久蜜一区二区| 日韩一区二区三区日韩精品| 蜜臀av一区二区三区日韩| 亚洲精品乱码久久久久久蜜桃不卡 | 国产精品自拍中文字幕| 熟妇的味道hd中文字幕| 无码AV中文字幕久久专区| 砚山县| 女同性恋一区二区三区视频| 国内精品久久人妻无码妲| 国产中文字幕一区二区| 青青青视频免费一区二区| 色综合色综合久久综合频道88| 日韩乱码卡一卡2卡三卡四| 久久亚洲国产成人精品性色| 丰满少妇被猛烈进入av久久| 江孜县| 午夜成人精品福利网站在线观看 | av激情亚洲男人的天堂| 国产精品不卡一区二区三区| 任你躁国产自任一区二区三区| 洛隆县| 日本高清在线播放一区二区三区 | 激情在线网| 高平市| 国产精品中出一区二区三区| 在线视频中文字幕二区| 精品熟女少妇av免费久久| 国产果冻豆传媒麻婆精东| 无码天堂亚洲国产AV| 亚洲成在人线在线播放无码| 国产gaysexchina男外卖| 开心色怡人综合网站| 狠狠综合久久综合88亚洲| 欧美变态另类zozo| 色综合视频一区二区三区| 欧美乱强伦xxxx孕妇| 国产欧美日韩亚洲一区二区三区| 三上悠亚精品一区二区久久| 亚洲精品久久久久玩吗| 超碰伊人久久大香线蕉综合|