C#中的'=>'语法是什么意思?

C#中的'=>'语法是什么意思?,第1张

C#中的'=>'语法是什么意思?

它是lambda运算符。

从C#3到C#5,仅用于lambda表达式。这些基本上是C#2中引入的匿名方法的较短形式,但也可以转换为表达式树。

举个例子:

Func<Person, string> nameProjection = p => p.Name;

等效于:

Func<Person, string> nameProjection = delegate (Person p) { return p.Name; };

在这两种情况下,您都将创建一个带有

Person
参数的委托,并返回该人的姓名(作为字符串)。

在C#6中,相同的语法用于 表示体成员 ,例如

// expression-bodied propertypublic int IsValid => name != null && id != -1;// expression-bodied methodpublic int GetHashCode() => id.GetHashCode();

也可以看看:

  • 匿名方法(C#2.0)和lambda表达式(C#3.0)有什么区别
  • 什么是Lambda?
  • C#Lambda表达式,为什么要使用它?

(实际上还有很多类似的问题-
尝试使用lambda和lambda-
expressions
标签。)



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5567515.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-14
下一篇 2022-12-14

发表评论

登录后才能评论

评论列表(0条)

保存