【问题标题】:What does an _ (underline character) on the left side of a C# lambda operator mean? [duplicate]C# lambda 运算符左侧的 _(下划线字符)是什么意思? [复制]
【发布时间】:2016-08-01 01:41:55
【问题描述】:

C# lambda 运算符左侧的 _(下划线字符)是什么意思?如:

        Movment = this.FixedUpdateAsObservable()
        .Select(_ =>
            {
                var x = Input.GetAxis("Horizontal");
                var y = Input.GetAxis("Vertical");
                return new Vector2(x, y).normalized;
            }
        );

【问题讨论】:

  • 这是一个变量名,就像任何其他有效标识符会在那个位置一样。
  • 一些以这种方式命名参数以表明该参数不会在 lambda 的主体中使用。否则,它就像其他参数一样。
  • 不能用 () 代替吗?如: () => { }

标签: c# lambda


【解决方案1】:

_ 是当您不需要该变量时,它可以让代码运行。

例子:

.Select(_ => ...
.Where(_ => ....
.OrderBy(_ =>

【讨论】:

  • 你错过了问题的重点。
  • @sstan 好的,我更新了我的答案。
猜你喜欢
  • 2015-11-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-04-01
  • 1970-01-01
  • 2010-09-15
  • 2017-03-10
  • 1970-01-01
相关资源
最近更新 更多