不是本人所写!网络收集

C#中的匿名函数和Lamda是很有意思的东东,那么我们就来介绍一下,这到底是什么玩意,有什么用途了?

  1. 打开visual studio 新建一个控制台程序.

  2. 我们利用委托来写一个匿名函数.

    代码如下图.

  3. 我们再来用lambda表达式写一次一模一样的功能.

    委托_算法 算法 = (double 参数一, double 参数二) => { Console.WriteLine("{0}{1}={2}", 参数一, 参数二, 参数一 参数二); };

    算法(5,2);

    Console.ReadKey();

  4. 一般我们学习C#的时候,说到匿名函数的时候都会谈到lambda表达式.

    其实lambda表达式就是匿名函数更为简洁的一种写法.

    通俗点讲,你需要写一个函数,但是懒得给它起名字,而且懒得写那么多封装和类.并且可能就这个地方调用,其他地方几乎不调用这段代码,那么我就可以用这个来搞定.

  5. 这个概念是来自函数式编程.这几年貌似挺流行的,很多语言都加入了这个功能.

    委托1 局_委托1 = () => { };

    第一个等号后面的()里面应该是放参数,但是因为我们上面声明的委托里面没有参数,所以这里也不写参数.

    第二个等号+大于号后面的{}里面放的就是函数的实现过程.

    lambda就是简化了的匿名函数.

  6. 第二种lambda表达式.

    委托2 局_委托2 = (string name) => { };

  7. 第三种 lambda表达式.

    委托3 局_委托3 = (string name) => { return name+"是个大傻B"; };

    Console.WriteLine(局_委托3("小猪"));

    Console.ReadKey();

注意事项

匿名函数的参数和返回值必须要和委托一样.

最新文章

  1. SG函数闲扯(转)
  2. 【Robot Framework】robot framework 学习以及selenium、appnium、requests实践(一)
  3. VCenter克隆虚拟机报错msg.snapshot.error-QUIESCINGERROR
  4. UIPage
  5. Android在Eclipse上的环境配置
  6. careercup-排序和查找 11.5
  7. Linux 软件源设置
  8. oauth与openid
  9. gridcontrol中LayoutView层叠图片效果
  10. C语言之基本算法37—数组最大值及其位置
  11. linux 常见命令及说明杂记
  12. 字符IO流
  13. Shiro与Spring整合
  14. shell脚本大小写转换
  15. 【python39--面向对象组合】
  16. 让TQ2440也用上设备树(2)
  17. java中的不同的value类型从map中获取不同的value值
  18. Android_ActionBar
  19. 开源的PaaS方案:在OpenStack上部署CloudFoundry (三)部署BOSH
  20. [DBSDFZOJ 多校联训] Password

热门文章

  1. rabbimq之流控
  2. MySQL 表与字段编码格式报错
  3. ANSI_NULLS、QUOTED_IDENTIFIER
  4. Windows server 2008 R2搭建主域控制器 + 辅域控制器
  5. html5 canvas围绕中心点旋转
  6. Java程序员从笨鸟到菜鸟之(十三)java网络通信编程
  7. StringByAppendingPathComponent和stringByAppendingString的区别
  8. C++ DateTime 结构
  9. Java条件编译
  10. JS按回车键实现登录的方法