关闭

Lambada表达式

370人阅读 评论(0) 收藏 举报
分类:

Lambada表达式

2015330

21:04

Lambda表达式由 3 个部分组成:

  1. 放在括号中的参数列表(未类型化)
  2. =>运算符
  3. C#语句

 

(source, e) =>Console.WriteLine(

"Event handlercalled after {0} milliseconds.",

(source asTimer).Interval);

 

这个 Lambda表达式分为 3 部分:

(1) 参数定义部分。这里有两个参数 paramA 和 paramB。这些参数都是未类型化的,因此编译

器可以根据上下文推断出它们的类型。在这个例子中,编译器可以确定,PerformOperations()方法调

用需要一个TwoIntegerOperationDelegate 类型的委托。这个委托有两个 int 参数,所以根据推断,

paramA 和paramB 都是 int 类型的变量。

(2) =>运算符。它把 Lambda 表达式的参数与表达式体分开。

(3) 表达式体。它指定了一个简单的操作:把 paramA 和 paramB 加起来。注意,不需要指定这

是返回值。编译器知道要创建可以使用TwoIntegerOperationDelegate 的方法,这个方法就必须有 int

返回类型。根据指定的操作,paramA + paramB 等于一个 int 类型的值,且没有提供额外的信息,所

 

 

 


 

  • lambda的参数可以指定类型,但是一旦指定类型就必须所有参数都要指定。
  • lambda的表达式体如果没有花括号那么就必须是一条语句。
  • lambda=>右侧为一条语句时,如果该语句是个值,那么lambda就会把它当作函数返回值。
  • lambda的表达式可以包括在话括号内,这时候可以支持多条语句,如果函数有返回值就必须用return返回一个值。


0
0

猜你在找
【直播】计算机视觉原理及实战——屈教授
【套餐】深度学习入门视频课程——唐宇迪
【套餐】Hadoop生态系统零基础入门
【套餐】嵌入式Linux C编程基础
【套餐】2017软考系统集成项目——任铄
【套餐】Android 5.x顶级视频课程——李宁
【直播】广义线性模型及其应用——李科
【直播】从0到1 区块链的概念到实践
【直播】机器学习之凸优化——马博士
【套餐】微信订阅号+服务号Java版 v2.0--翟东平
查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:36144次
    • 积分:628
    • 等级:
    • 排名:千里之外
    • 原创:27篇
    • 转载:1篇
    • 译文:0篇
    • 评论:11条
    最新评论