zoukankan      html  css  js  c++  java
  • 原理Lambda表达式

    http://www.kingreatwill.com/

    (1)源起

          .net的设计者发现在使用匿名方法时,

          仍旧有一些多余的字母或单词的编码工作

          比如delegate关键字

          于是进一步简化了匿名方法的写法

        (2)使用      

                List<int> arr = new List<int>() { 1, 2, 3, 4, 5, 6, 7 };
                arr.ForEach(new Action<int>(delegate(int a) { Console.WriteLine(a); }));
                arr.ForEach(new Action<int>(a => Console.WriteLine(a)));

           匿名方法的代码如下:

          delegate(int a) { Console.WriteLine(a); }

          使用lambda表达式的代码如下:

          a => Console.WriteLine(a)

          这里解释一下这个lambda表达式

          <1>

            a是输入参数,编译器可以自动推断出它是什么类型的,

            如果没有输入参数,可以写成这样:

            () => Console.WriteLine("ddd")

          <2>

            =>是lambda操作符

          <3>

            Console.WriteLine(a)是要执行的语句。

            如果是多条语句的话,可以用{}包起来。

            如果需要返回值的话,可以直接写return语句

  • 相关阅读:
    [noip2018]day1
    [CF1110d]JONGMAH
    BZOJ 2733 [HNOI2012]永无乡
    BZOJ 3123 [SDOI2013] 森林
    Nowcoder 练习赛26E 树上路径
    Luogu 2575 高手过招-SG函数
    BZOJ 1123[POI2008]BLO-Tarjan
    Nowcoder OI赛制测试2 F 假的数学题
    Luogu 2467[SDOI2010]地精部落
    Luogu 2216[HAOI2007]理想的正方形
  • 原文地址:https://www.cnblogs.com/kingreatwill/p/4364936.html
Copyright © 2011-2022 走看看