【问题标题】:What does '=>' do in C#? [duplicate]'=>' 在 C# 中有什么作用? [复制]
【发布时间】:2011-06-21 17:14:12
【问题描述】:

可能的重复:
Lamda Explanation and what it is as well as a good example
What is the => token called?

我看过这段代码:

myContext.SomeEntities.Single(x => x.code == code);  

我不知道 => 运算符是做什么的。

在 google 上每次搜索有关该运算符的搜索都不会返回任何结果。

谢谢。

【问题讨论】:

  • @Steve:这甚至是重复的吗?您问题中的那个用户知道什么是 lambda 表达式,@Javire 不知道。他在问什么 => 就像有人会问什么!签到。
  • google 无法处理搜索 => 而是搜索 lambda。
  • @0A0D - 我不知道,这 q 似乎涵盖了我所需的基础。语法和语义。

标签: c# operators


【解决方案1】:

=> 运算符指定Lambda Expression

lambda 表达式是一个匿名函数,可以包含表达式和语句,可用于创建委托或表达式树类型。

所有 lambda 表达式都使用 lambda 运算符 =>,读作“goes to”。 lambda 运算符的左侧指定输入参数(如果有),右侧保存表达式或语句块。 lambda 表达式 x => x * x 读作“x 乘以 x”。可以将这个表达式分配给一个委托类型,如下所示:

static void Main(string[] args)
{
    Func<int, int> func = x => x * x;
    int j = func(5);
    // j == 25
}

【讨论】:

  • 我也见过/听说过“映射到”而不是“去到”。
  • +1 花更多时间,然后是其他答案,复制和粘贴引用(即使这已经涵盖)并提供示例。
  • @Richard:或者“为哪个”
【解决方案2】:

【讨论】:

    【解决方案3】:

    这是定义一个 lambda。你可以读它“x去x.code等于代码”,这意味着给定x,返回给定比较的结果。

    【讨论】:

      【解决方案4】:

      它表示代码是一个 lambda 表达式。

      更多信息: http://msdn.microsoft.com/en-us/library/bb397687.aspx

      【讨论】:

        【解决方案5】:

        它们与 lambda 表达式有关。

        您可以在此处阅读有关 Lambda 表达式的信息: http://www.rvenables.com/2009/03/practical-introduction-to-lambda-expressions/

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2011-05-10
          • 2011-05-19
          • 2011-07-08
          • 2016-03-21
          • 2014-05-19
          • 2011-04-18
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多