您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

匿名方法(C#2.0)和lambda表达式(C#3.0)有什么区别?[重复]

匿名方法(C#2.0)和lambda表达式(C#3.0)有什么区别?[重复]

有关匿名方法的MSDN页面对此进行了解释

在2.0之前的C#版本中,声明委托的唯一方法是使用命名方法。C#2.0引入了匿名方法,在C#3.0和更高版本中,lambda表达式取代了匿名方法,成为编写内联代码的首选方法。但是,本主题中有关匿名方法的信息也适用于lambda表达式。在一种情况下,匿名方法提供了lambda表达式中找不到的功能。匿名方法使您可以省略参数列表,这意味着可以将匿名方法转换为具有各种签名的委托。对于lambda表达式,这是不可能的。有关特定于lambda表达式的详细信息,请参见Lambda表达式(C#编程指南)。

关于lambda表达式

Lambda表达式是一个匿名函数,可以包含表达式和语句,并且可以用于创建委托或表达式树类型。所有lambda表达式都使用lambda运算符=>,它被读为“ goes to”。lambda运算符的左侧指定输入参数(如果有),而右侧则保存表达式或语句块。读取lambda表达式x => x * x“ x达到x的x倍”。可将此表达式分配给委托类型,如下所示:

c# 2022/1/1 18:13:32 有720人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶