asp.net lambda表达式
类别:编程学习 浏览量:2900
时间:2014-1-2 asp.net lambda表达式
asp.net lambda表达式一、lambda运算符
所有的lambda表达式都是用新的lambda运算符 " => ",可以叫他,“转到”或者 “成为”。运算符将表达式分为两部分,左边指定输入参数,右边是lambda的主体。
使用Lambda表达式,当编译器编译时,Lambda表达式同样会被编译成一个匿名方法进行相应的操作,但是与匿名方法相比,Lambda表达式更容易阅读。
比较Lambda表达式和匿名方法,在匿名方法中,"("、")"内是方法的参数的集合,这就对应了Lambda表达式中的"(参数列表)",而匿名方法中"{"、"}"内是方法的语句块,这对应了Lambda表达式中"=>"符号右边的表达式或语句块项。
二、lambda表达式语法
Lambda表达式可以有多个参数、一个参数,或者没有参数。
格式:
(参数列表)=>表达式或语句块
表现形式为
1.一个参数:param=>expr
2.多个参数:(param-list)=>expr
Lambda表达式的格式实例
- (x, y) => x * y //多参数,隐式类型=> 表达式
- x => x * 5 //单参数, 隐式类型=>表达式
- x => { return x * 5; } //单参数,隐式类型=>语句块
- (int x) => x * 5 //单参数,显式类型=>表达式
- (int x) => { return x * 5; } //单参数,显式类型=>语句块
- () => Console.WriteLine() //无参数
三、Lambda表达式与匿名方法的对比实例
1、Sort方法
List<int> list=new List<int>();
var numbers = new []{ 5, 4, 1, 3, 9, 8, 6, 7, 2, 0 };
list.AddRange(numbers);
list.Sort(delegate (int a, int b)
{
return a.CompareTo(b);
}
);
//use lambda
list.Sort((a,b)=>a.CompareTo(b));
2、ConvertAll方法
List<int> doubleList =list.ConvertAll<int>(delegate (int i)
{
return i*2;
});
//use lambda
var doubleList2=list.ConvertAll<int>(i=>i*2);
3、FindAll方法
List<int> lowerThanFiveList =list.FindAll(delegate (int i)
{
return i<5;
}
);
//lambda
var lowerThanFiveList2=list.FindAll(i=>i<5);
四、Lambda表达式注意事项
标签:lambda表达式
您可能感兴趣
- 使用 LINQPad 调试linq以及lambda表达式
- asp.net lambda表达式
- python中lambda教程(浅析python的Lambda表达式)
- pythonlambda详解(Python的条件表达式和lambda表达式实例)
- 三分71 生死战爆发 篮网旧将丁威迪今天成奇兵,助队赢球(三分71生死战爆发)
- 《红 雄安》系列广播剧第一集 水上奇兵雁翎队(雄安系列广播剧第一集)
- 小说 小伙穿越成刘备,用现代知识指挥作战,众谋士都看呆了(小伙穿越成刘备)
- 解析葡萄牙6-1瑞士 进攻多点开花,贡萨洛-拉莫斯一战成名(解析葡萄牙6-1瑞士)
- 这支 奇兵队 腕大 有范儿还各怀绝技,毒贩杀人犯见了都要仓皇而逃(这支奇兵队腕大)
- 雄藩崛起 奇兵队与幕末长州藩军事改革(雄藩崛起奇兵队与幕末长州藩军事改革)
热门推荐
- dedecms更新后设置空白(dedecms如何去掉首页index.html的方法)
- 微信小程序做计算器(微信小程序实现计算器小功能)
- python怎样看字符unicode编码(Python3中编码与解码之Unicode与bytes的讲解)
- sleep线程不安全(当master down掉后,pt-heartbeat不断重试会导致内存缓慢增长的原因及解决办法)
- mysql安装时服务无法启动(MySQL 实例无法启动的问题分析及解决)
- laravel数据查询(laravel按天、按小时,查询数据的实例)
- mysql完整教程(MySql新手入门的基本操作汇总)
- nodejs如何识别接口(Node实现搜索框进行模糊查询)
- phpstudyv8.0使用教程学习(phpStudy环境安装SSL证书教程)
- nginxlocation和alias的区别(nginx搭建图片服务器的过程详解root和alias的区别)