说明(2017-11-21 18:51:32):

1. 例子为求1~100的和,答案应该是5050(小学学算盘的时候,我爹就让我算,从1拨到100是多少呀?当时的我年幼无知,还不知道高斯小时候的故事,扒拉了半天高高兴兴的去说答案,结果说不对,艹!)

2. Lambda表达式是将匿名委托给简化了的写法,省去了delegate关键字,省去了参数类型,但是要保证参数类型不能出错,也就是跟委托定义时的参数类型一致。

3. 其他没啥好说的看注释,下一讲用Lambda表达式求水仙花数。

正常写法:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text; namespace _05_匿名委托
{
class Program
{
static void Main(string[] args)
{
//调用方法
Console.WriteLine(GetSum(, ));
Console.ReadKey();
}
//定义求和的方法
public static int GetSum(int x, int y)
{
int sum = ;
for (int i = x; i <= y; i++)
{
sum += i;
}
return sum;
}
}
}

匿名委托写法:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text; namespace _05_匿名委托
{
class Program
{
public delegate int MyDel(int x, int y);
static void Main(string[] args)
{
//记得最后要加分号,因为是赋值,跟js一样。
MyDel myDel = delegate(int x, int y)
{
//在委托里面定义求和的方法,匿名委托用于只需要调用一次的方法,省的再起个方法名了(说的就是上面的GetSum!)
int sum = ;
for (int i = x; i <= y; i++)
{
sum += i;
}
return sum;
};
Console.WriteLine(myDel(, ));
Console.ReadKey();
}
}
}

Lambda表达式写法:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text; namespace _05_匿名委托
{
class Program
{
public delegate int MyDel(int x, int y);
static void Main(string[] args)
{
//尼玛连参数类型都省了,还有那个delegate关键字,太特么懒了!
MyDel myDel = (a, b) =>
{
int sum = ;
for (int i = a; i <= b; i++)
{
sum += i;
}
return sum;
};
Console.WriteLine(myDel(, ));
Console.ReadKey();
}
}
}

最新文章

  1. CentOS 7 ssh脚本 求两个数值的“和”,“乘积”,”商“
  2. lamp环境搭建(ubuntu)
  3. 《UML大战需求分析》阅读笔记01
  4. js的alert和confirm美化
  5. OpenGL顶点缓冲区对象(VBO)
  6. oracle中截取某个字符前面和后面的值
  7. 查看SQL执行计划
  8. STL六大组件之——分配器(内存分配,好深奥的东西)
  9. DB天气app冲刺二阶段第十一天(完结)
  10. Android Fragment 多标签应用
  11. C#通过FTP账号上传、修改、删除文件 FTPClient
  12. 一元云购qq互联回调地址错误解决办法
  13. IE浏览器右键菜单插件开发(上篇)——自定义一个IE右键菜单项
  14. Inside The C++ Object Model(二)
  15. 09-OpenLDAP加密传输配置
  16. [Android Security] APK自我保护 - DEX/APK校验
  17. Golang之http编程
  18. 关于51精确延时及keil仿真延时时间
  19. linux中查看结构体和宏
  20. php学习六:字符串

热门文章

  1. 模型验证组件 FluentValidation
  2. 【Java】详解菜单组件
  3. Shell脚本开发环境的配置和优化实践
  4. matlab入门笔记(一):常用快捷键
  5. C++中的#和##运算符
  6. python标准库介绍——32 Queue 模块详解
  7. [WebGL入门]十八,利用索引缓存来画图
  8. 如何安全的下载Devcon.exe文件
  9. sqlserver自定义函数与存储过程的区别 实例详解
  10. SSO单点登录的发展由来以及实现原理