我很少遇到其他程序员!
当我第一次看到令牌时,我的想法是“暗示”,因为这就是它在数学证明中的读法,但显然不是它的意义。
因此,我该如何说或读“ =>”,如:
IEnumerable<Person> Adults = people.Where(p => p.Age > 16)
还是什至有一种同意的说法?
在阅读该运算符时,我通常会说“诸如此类”。
在您的示例中,p => p.Age> 16读为“ P,因此p.Age大于16”。
实际上,我在linq正式发布前论坛上曾问过这个问题,Anders Hejlsberg回答说
我通常将=>运算符读为“ becomes”或“ for which”。例如, Func f = x => x * 2; Func test = c => c.City ==“伦敦”; 读作“ x变成x * 2”和“ c.city等于伦敦的c”
至于“去”-这对我来说从来没有道理。’p’不会去任何地方。
在通过电话向某人读取代码的情况下,只要他们是C#程序员,我就只使用“ lambda”一词-也就是说,“ p lambda p点年龄大于-十六。”
史蒂夫·杰索普(Steve Jessop)在评论中提到了转换时的“映射到”-因此以安德斯(Anders)为例:
x => x * 2;
会读
x映射到x乘以2。
在这种情况下,这似乎比“成为”更接近代码的实际意图。