四时宝库

程序员的知识宝库

c#入门教程(十六)Lambda表达式(c#lambda表达式在方法的使用)

Lambda 表达式是一种语法,也就是大家说的语法糖,但是真的很甜,来看看它为我们做了什么。

我们使用前面委托的例子:

客户端调用:

我们用Lambda表达式来实现:

定义委托:


Func 是C#内置的一个带返回值的委托,相当于 public delegate T1 Method(T2 t2);这里的T1和T2 可以是任何类型和任意个数。

客户端调用:

用了Lambda 表达式后我们的代码简洁了不少。

接下来,我们继续使用Lambda 来简化代码:

Action是C#内置的一个无返回值的委托,相当于 public delegate void Method(T2 t2);这里的T2 可以是任何类型和任意个数。

看到差异没,我们最后只用了几行代码就完成了委托的定义和调用,这一切的背后都是编译器帮我们生成了代码,完整的代码就是我们最初定义时的样子。

Lambda 表达式的定义为:圆括号 加 等号 加箭头 加大括号即:()=> {} ,

圆括号表示方法的参数类型,如果是无参的用空的圆括号:(),带参的需要把参数定义在括号内(name),同时在定义时需要指明类型,等号加箭头是表达式必须的,箭头右边是方法体,圆括号和大括号是可以省略的。

Lambda 表达式能简化委托、事件、函数的定义,提高了编码效率。

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接