匿名函数和Lamda
不是本人所写!网络收集
C#中的匿名函数和Lamda是很有意思的东东,那么我们就来介绍一下,这到底是什么玩意,有什么用途了?
打开visual studio 新建一个控制台程序.
我们利用委托来写一个匿名函数.
代码如下图.
我们再来用lambda表达式写一次一模一样的功能.
委托_算法 算法 = (double 参数一, double 参数二) => { Console.WriteLine("{0}{1}={2}", 参数一, 参数二, 参数一 参数二); };
算法(5,2);
Console.ReadKey();
一般我们学习C#的时候,说到匿名函数的时候都会谈到lambda表达式.
其实lambda表达式就是匿名函数更为简洁的一种写法.
通俗点讲,你需要写一个函数,但是懒得给它起名字,而且懒得写那么多封装和类.并且可能就这个地方调用,其他地方几乎不调用这段代码,那么我就可以用这个来搞定.这个概念是来自函数式编程.这几年貌似挺流行的,很多语言都加入了这个功能.
委托1 局_委托1 = () => { };
第一个等号后面的()里面应该是放参数,但是因为我们上面声明的委托里面没有参数,所以这里也不写参数.
第二个等号+大于号后面的{}里面放的就是函数的实现过程.
lambda就是简化了的匿名函数.
第二种lambda表达式.
委托2 局_委托2 = (string name) => { };
第三种 lambda表达式.
委托3 局_委托3 = (string name) => { return name+"是个大傻B"; };
Console.WriteLine(局_委托3("小猪"));
Console.ReadKey();
注意事项
匿名函数的参数和返回值必须要和委托一样.
最新文章
- SG函数闲扯(转)
- 【Robot Framework】robot framework 学习以及selenium、appnium、requests实践(一)
- VCenter克隆虚拟机报错msg.snapshot.error-QUIESCINGERROR
- UIPage
- Android在Eclipse上的环境配置
- careercup-排序和查找 11.5
- Linux 软件源设置
- oauth与openid
- gridcontrol中LayoutView层叠图片效果
- C语言之基本算法37—数组最大值及其位置
- linux 常见命令及说明杂记
- 字符IO流
- Shiro与Spring整合
- shell脚本大小写转换
- 【python39--面向对象组合】
- 让TQ2440也用上设备树(2)
- java中的不同的value类型从map中获取不同的value值
- Android_ActionBar
- 开源的PaaS方案:在OpenStack上部署CloudFoundry (三)部署BOSH
- [DBSDFZOJ 多校联训] Password