1
考虑这个简短的片段:如何在LINQ中执行此查询?
var candidateWords = GetScrabblePossibilities(letters);
var possibleWords = new List<String>();
foreach (var word in candidateWords)
{
if (word.Length == pattern.Length)
{
bool goodMatch = true;
for (int i=0; i < pattern.Length && goodMatch; i++)
{
var c = pattern[i];
if (c!='_' && word[i]!=c)
goodMatch = false;
}
if (goodMatch)
possibleWords.Add(word);
}
}
是否有使用LINQ干净表达这样一种方式?
这是什么?
记住,'Zip'只会用C#4.0 – 2011-05-01 16:15:53
工作'。所有()'返回一个布尔值,他需要一个列表。 – 2011-05-01 16:23:03
@Paul:它是'where'子句的一部分。要将查询物化为列表,只需调用'ToList()'。 – Ani 2011-05-01 16:25:23