C#中此运算符的名称是什么?
答案 0 :(得分:16)
它被称为lambda operator in the MSDN docs。
所有lambda表达式都使用lambda operator =>,读作“去 到了。“lambda的左边 运算符指定输入 参数(如果有的话)和右侧 持有表达或陈述 块。 lambda表达式x => X * x读为“x转到x倍x”。这个 表达式可以分配给 委托类型如下:
答案 1 :(得分:3)
作为旁注,在Ruby中称为'hashrocket'运算符。
答案 2 :(得分:2)
如果您在LINQ的上下文中谈论lamdba operator。
比如......
var selectedValues = myList.Where(v=>v.Name="Matt");
您可以在自己的方法中使用这些代替delgates。可能的用途包括这样的......
void DoWork<T>(T input, Func<T, bool> doAction, Action<T> action)
{
if (doAction(input))
action(input);
}
...上述方法的用法看起来像......
DoWork(5, i=>i>1, v=>Console.WriteLine(v));
...因为5大于1,这将在控制台上显示5。
答案 3 :(得分:0)
FWIW,对于Rubyists来说,这个运算符被称为“哈希火箭”。 (甚至有company with that name。)