当前位置:  开发笔记 > 编程语言 > 正文

我如何在.Net中的lambda表达式中使用"=>"

如何解决《我如何在.Net中的lambda表达式中使用"=>"》经验,为你挑选了7个好方法。

我很少遇到任何其他程序员!

当我第一次看到令牌时,我的想法是"暗示",因为这就是它在数学证明中所读到的,但显然不是它的意义.

那么如何说或读"=>"如下: -

IEnumerable Adults = people.Where(p => p.Age > 16)

或者甚至有一种商定的说法吗?



1> Erik Forbes..:

我通常会在阅读该运算符时说"这样".

在您的示例中,p => p.Age> 16读为"P,使得p.Age大于16".

事实上,我在官方的linq预发布论坛上提出了这个问题,Anders Hejlsberg回应说

我通常将=>运算符读为"变为"或"为此".例如,
Func f = x => x*2;
Func test = c => c.City =="London";
读为"x变为x*2"和"c为c.City等于伦敦"

至于'去' - 这对我来说永远不会有意义.'p'不会去任何地方.

在通过电话向某人读取代码的情况下,只要他们是C#程序员,我就会使用"lambda"这个词 - 也就是说,"p lambda p dot age than than than十六."

在评论中,Steve Jessop在转换的情况下提到了"map to" - 所以以Anders为例:

x => x * 2;

会读

x映射到x乘以2.

对于这种情况,这似乎更接近代码的实际意图而不是"变成".


在这种情况下,我会说"映射到".当人们认为你在谈论一个容器时会有轻微的风险,但你可以通过解释第一次说出来解决这个问题,你的意思是"lambda运算符,你知道,等于 - 更大 - 比".
"Goes to"是一个不那么尴尬的渲染"填充堆栈框架"

2> Kent Boogaar..:

来自MSDN:

所有lambda表达式都使用lambda operator =>,它被读作"转到".


野趣.也许更有趣的是,[VS2010版本](http://msdn.microsoft.com/en-us/library/bb397687(v = vs.100).aspx)也是如此,但该指南已从[VS2012版本](http://msdn.microsoft.com/en-us/library/bb397687(v = vs.110).aspx).

3> Gulzar Nazim..:

通过电话阅读代码

来自Eric Lippert:

我个人会说c => c + 1为"看得见加一".我听到的一些变化:

对于投影,(客户c)=> c.Name:"客户看到变成看点名称"

对于谓词,(Customer c)=> c.Age> 21:"客户看到这样看点时间大于二十一"



4> Aidos..:

我一直称它为"王操作员":-)

"p王龄大于16岁"


那是Numberwang!
你得告诉我这个星球上还有谁叫这个"王".我有一个团队成员告诉我这是一个"王",这是互联网上唯一一个我们任何人都可以找到它的答案.

5> Brian..:

我见过有人说,"箭头."


我希望这是一个笑话.
我从来没有见过这个.听说过,也许,但没有看到.

6> CodeChef..:

我使用"去"因为一本LINQ书告诉我:)



7> Max Strini..:

"映射到"怎么样?它既简洁又可以说在技术上更准确(即没有像"转到"或"变成"那样的状态变化的建议,没有一个集合与其特征函数的混淆,如"如此"或"为哪个")而不是其他选择.虽然如果已经有一个标准,因为MSDN页面似乎暗示,也许你应该去那(至少对于C#代码).

推荐阅读
女女的家_747
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有