您当前的位置: 首页 >  苍狼王unity学院 c#

补点C#基础_014_匿名方法、Lambda表达式(一个参数,多个参数)

苍狼王unity学院 发布时间:2019-07-25 13:48:46 ,浏览量:4

1、匿名方法
匿名方法本质上是一个方法,只是没有名字,任何使用委托变量的地方都可以使用匿名方法赋值。
1.2
class Program
{
static void Main(string[] args)
{
Func plus = delegate (int t0, int t1)
{
return t0+t1;
};
//匿名方法本质上是一个方法,只是没有名字,任何使用委托变量的地方都可以使用匿名方法赋值。
}
}

2.Lambda表达式
2.1,C#3.0开始,可以使用lambda来代替匿名方法,只要有委托参数类型的地方都可以使用lambda表达式。
lambda表达式用来代替匿名方法,所以lambda表达式也是定义了一个方法。lambda表达式的参数是不需要声明类型的。
Lambda运算符=>左边列出了需要的参数,如果是一个参数可以直接写成a=>
2.2
class Program
{
static void Main(string[] args)
{
//lambda表达式用来代替匿名方法,所以lambda表达式也是定义了一个方法。
Func plus = (arg1, arg2) =>//lambda表达式的参数是不需要声明类型的。
{
return arg1 + arg2;
};
Console.WriteLine(plus(80,20));
Console.ReadKey();
}
}
2.3结果:
2.4Lambda表达式表示的参数只有一个的时候,可以不加上括号,当函数体的语句只有一句的时候,我们可以不加上大括号,也可以不加上return语句。
class Program
{
static void Main(string[] args)
{
Func test1 = a => a+1;
Func test2 = (a) =>
{
return a + 1;
};
Console.WriteLine(test1(23));
Console.WriteLine(test2(23));
Console.ReadKey();
}
}

2.5运行结果

关注
打赏
查看更多评论

苍狼王unity学院

暂无认证

  • 4浏览

    0关注

    252博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录