深入理解C#中的Lambda运算符(=>
)
问题:
C#中的=>
语法代表什么?
解答:
=>
语法代表Lambda运算符。该运算符在C# 3中引入,具有多种用途。
Lambda表达式 (C# 3-5):
在此上下文中,=>
用于创建Lambda表达式。这些表达式是匿名方法的简洁形式,允许您将匿名函数编写为单个表达式。例如:
<code class="language-csharp">Func<Person, string> nameProjection = p => p.Name;</code>
此代码创建一个委托,它接受一个Person参数并将其名称作为字符串返回。它等同于以下匿名方法:
<code class="language-csharp">Func<Person, string> nameProjection = delegate (Person p) { return p.Name; };</code>
表达式主体成员 (C# 6):
在C# 6中,相同的=>
语法用于表达式主体成员。这些是其主体定义为表达式而不是代码块的属性或方法。例如:
<code class="language-csharp">// 表达式主体属性 public int IsValid => name != null && id != -1; // 表达式主体方法 public int GetHashCode() => id.GetHashCode();</code>
这些特性为编写更简洁、更具表现力的代码提供了语法糖。
更多资源:
以上是C# 中'=>”运算符是什么意思?的详细内容。更多信息请关注PHP中文网其他相关文章!