C#中() =>是什么意思

如题C#中()=>是什么意思,比如publicICommandAddCommand{get{if(this.addCommand==null)this.addComman... 如题C#中() =>是什么意思,比如
public ICommand AddCommand
{
get
{
if (this.addCommand == null)
this.addCommand = new RelayCommand(() => this.AddPerson(), () => this.CanAddPerson());

return this.addCommand;
}
}
展开
 我来答
百度网友ded708b
高粉答主

推荐于2019-09-27 · 繁杂信息太多,你要学会辨别
知道答主
回答量:11
采纳率:100%
帮助的人:1万
展开全部

这是NET3.0以后的新特性 Lambda表达式 ,“Lambda 表达式”是一个匿名函数,Lambda表达式基于数学中的λ演算得名,直接对应于其中的lambda抽象,是一个匿名函数,即没有函数名的函数。Lambda表达式可以表示闭包(注意和数学传统意义上的不同)。

扩展资料

关于Lambda表达式的使用方法

Lambda 用在基于方法的 LINQ 查询中,作为诸如 Where 和 Where 等标准查询运算符方法的参数。

使用基于方法的语法在 Enumerable 类中调用 Where 方法时(像在 LINQ to Objects 和 LINQ to XML 中那样),参数是委托类型 System..::.Func<(Of <(T, TResult>)>)。使用 Lambda 表达式创建委托最为方便。

例如,当您在 System.Linq..::.Queryable 类中调用相同的方法时(像在 LINQ to SQL 中那样),则参数类型是 System.Linq.Expressions..::.Expression<Func>,其中 Func 是包含至多五个输入参数的任何 Func 委托。

同样,Lambda 表达式只是一种用于构造表达式目录树的非常简练的方式。尽管事实上通过 Lambda 创建的对象的类型是不同的,但 Lambda 使得 Where 调用看起来类似。

在前面的示例中,请注意委托签名具有一个 int 类型的隐式类型输入参数,并返回 int。可以将 Lambda 表达式转换为该类型的委托,因为该表达式也具有一个输入参数 (x),以及一个编译器可隐式转换为 int 类型的返回值。(以下几节中将对类型推理进行详细讨论。)使用输入参数 5 调用委托时,它将返回结果 25。

资料来源:百度百科:Lambda表达式

糖糖寳寳
推荐于2017-09-25 · TA获得超过6.4万个赞
知道大有可为答主
回答量:1.8万
采纳率:92%
帮助的人:3904万
展开全部
是lambda表达式,表示一个匿名函数,=>前面的是参数,后面的是函数体。
可以把它当作一个函数。
举例:
Func<int, int, int> Add = (x, y) => x + y;
Console.WriteLine(Add(2, 3)); // 5
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
dengjun9452005
推荐于2017-10-14 · TA获得超过655个赞
知道小有建树答主
回答量:144
采纳率:0%
帮助的人:184万
展开全部
这是 .NET3.0以后的新特性 Lambda表达式

RelayCommand(() => this.AddPerson(), () => this.CanAddPerson());

的意思可以翻译为

RelayCommand(参数一, 参数二);
参数一 :() => this.AddPerson()
参数二 :() => this.CanAddPerson()

() => this.AddPerson() 的意思是 一个没有参数的方法,返回 this.AddPerson() 而这个返回值的类型不用指定 系统会自动判断
同理 () => this.CanAddPerson() 就是 一个没有参数的方法返回this.CanAddPerson()
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
CloudPRose
2010-06-12 · TA获得超过5175个赞
知道大有可为答主
回答量:3175
采纳率:66%
帮助的人:873万
展开全部
Lambda Expressions
Lambda表达式

“Lambda 表达式”是一个匿名函数,它可以包含表达式和语句,并且可用于创建委托或表达式树类型。

所有 Lambda 表达式都使用 Lambda 运算符 =>,该运算符读为“goes to”。该 Lambda 运算符的左边是输入参数(如果有),右边包含表达式或语句块。Lambda 表达式 x => x * x 读作“x goes to x times x”。

参考资料: http://msdn.microsoft.com/zh-cn/library/bb397687.aspx

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cswcbqkl
2010-06-12
知道答主
回答量:12
采纳率:0%
帮助的人:10.3万
展开全部
lamb表达式
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式