【发布时间】:2021-07-11 12:25:27
【问题描述】:
我试图将 lambda 表达式理解为参数
当我们使用 Linq 的Count:
string s = "hello";
int count = s.Count(x => x == 'h');
它怎么知道x 是s 的元素?
【问题讨论】:
-
您能澄清一下
how does it know x is element of s的意思吗?你不明白什么是 lambda 表达式吗?你不明白它们是如何在Count()方法的上下文中使用的吗?你不明白如何枚举字符串吗? -
网站上不乏解释 lambda 表达式的信息。见重复。在您的示例中,
x只是 lambda 表示的匿名方法的参数;它“知道”该值,因为调用者,Count()创建的迭代器,传递值,就像任何调用者将任何值传递给任何其他方法一样。