string[] digits = { "zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine" };
var shortDigits = digits.Where((digit, index) => digit.Length < index);
foreach (var sD in shortDigits)
{
Console.WriteLine(sD);
}
MSDN给出了上面的代码示例,我明白“digit”代表数组中的一个字符串。我不明白的是,Lambda表达式如何知道第二个参数是数组中字符串的索引。Lambda Expressing麻烦理解MSDN示例
你所说的'know'意思?第二个参数包含索引,因为这是通过'Where'传递给它的东西,就像第一个参数是源序列中的元素一样。 – Lee
因为它在文档中https://msdn.microsoft.com/zh-cn/library/bb549418(v=vs.110).aspx –