Lambda表达式其实就是匿名方法的进一步简写,也就是匿名方法的升级版。 本篇文章我会在我写的匿名方法的基础上来做更改,匿名方法文章链接:http://www.wjgbaby.com/2017/08/17/c%e4%b9%8b%e5%8c%bf%e5%90%8d%e6%96%b9%e6%b3%95/ Lambda表达式语法: 委托类型 变量 = ([参数列表])=> { 方法体; }; 注意点: 1.=> 是Lambda 表达式特有符号,读作goes to 2.如果没有参数列表,()也不能省略,如:()=>

pro.noPad = () => { Console.WriteLine(“我是Test01”); };

3.如果参数列表中只有一个参数,()可以省略

pro.Pad = str => { Console.WriteLine(“我是{0}”, str); };

4.如果方法体内只有一句代码,可以省略代码块符号,也就是不用写{ }

pro.Pad = (str) => Console.WriteLine(“我是{0}”, str); ;
pro.Pad = str => Console.WriteLine(“我是{0}”, str); ;

代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace anonymousMethods
{
class Program
{
public delegate void noParameterDelegate(); //无参委托
public delegate void parameterDelegate(string str); //有参委托

    public noParameterDelegate noPad;
    public parameterDelegate Pad;

    static void Main(string\[\] args)
    {
        Program pro = new Program();

        //老方法
        //pro.noPad = Test01;
        //pro.Pad = Test02;
        //pro.noPad();
        //pro.Pad("武武武");

        //匿名方法
        //pro.noPad = delegate () { Console.WriteLine("我是Test01"); };
        //pro.Pad = delegate (string str) { Console.WriteLine("我是{0}", str); };

        //Lambda表达式
        pro.noPad = () => { Console.WriteLine("我是Test01"); };
        pro.Pad = (str) => { Console.WriteLine("我是{0}", str); };

        //一下三句话每句都可以替换掉第35句,即注释上面的这句话
        //pro.Pad = str => { Console.WriteLine("我是{0}", str); };
        //pro.Pad = (str) => Console.WriteLine("我是{0}", str); ;
        //pro.Pad = str =>  Console.WriteLine("我是{0}", str); ;

        pro.noPad();
        pro.Pad("武武武");

        Console.ReadKey();
    }

    /\*
    public static void Test01()
    {
        Console.WriteLine("我是Test01");
    }

    public static void Test02(string str)
    {
        Console.WriteLine("我是{0}",str);
    }\*/
}

}

结果如下: [

](http://www.wjgbaby.com/wp-content/uploads/2017/08/17081703-300x129.png)
](http://www.wjgbaby.com/wp-content/uploads/2017/08/17081703-300x129.png)