Im folgenden Beispiel, wie kann ich einfach eventScores
zu List<int>
konvertieren, so dass ich es als Parameter für prettyPrint
verwenden kann?Wie konvertiert man System.Linq.Enumerable.WhereListIterator <int> in die Liste <int>?
Console.WriteLine("Example of LINQ's Where:");
List<int> scores = new List<int> { 1,2,3,4,5,6,7,8 };
var evenScores = scores.Where(i => i % 2 == 0);
Action<List<int>, string> prettyPrint = (list, title) =>
{
Console.WriteLine("*** {0} ***", title);
list.ForEach(i => Console.WriteLine(i));
};
scores.ForEach(i => Console.WriteLine(i));
prettyPrint(scores, "The Scores:");
foreach (int score in evenScores) { Console.WriteLine(score); }
Pfft , langsamer Code! i => (i & 1) == 0 – leppie
Pfft, Mikro-Optimierungen nicht durch Profiling gefahren. Die Erstellung des Iterators und die Kopie in die Liste werden Hunderte von Malen langsamer sein als alle Einsparungen, die durch Mikrooptimierung der Mathematik erzielt werden. * Optimiere das langsame Zeug. * –