Mehrere Listen oder Arrays gleichzeitig iterieren: Zip-Funktion in C#
Um mit einer einzigen foreach-Anweisung effizient über mehrere Sammlungen zu iterieren, bietet C# die integrierte Zip-Funktion. Dieser Vorgang ist seit .NET 4 verfügbar und vereinfacht das Paaren von Elementen aus verschiedenen Sequenzen.
Um die Zip-Funktion zu nutzen, rufen Sie sie einfach für zwei oder mehr Sammlungen auf. Betrachten Sie zum Beispiel das folgende Beispiel mit zwei Listen:
var numbers = new [] { 1, 2, 3, 4 }; var words = new [] { "one", "two", "three", "four" };
Mit der Zip-Funktion können Sie eine neue Sequenz erstellen, die Elemente aus beiden Listen kombiniert, was zu einer Folge von Tupeln führt:
var numbersAndWords = numbers.Zip(words, (n, w) => new { Number = n, Word = w });
Jetzt können Sie mit einer foreach-Schleife über die ZahlenAndWords-Sequenz iterieren:
foreach(var nw in numbersAndWords) { Console.WriteLine(nw.Number + nw.Word); }
Dadurch wird gedruckt verkettete Werte:
1one 2two 3three 4four
Alternativ können Sie anstelle eines anonymen Typs mit benannten Feldern auch Tuple und seinen statischen Tuple.Create-Helfer verwenden:
foreach (var nw in numbers.Zip(words, Tuple.Create)) { Console.WriteLine(nw.Item1 + nw.Item2); }
Die Zip-Funktion bietet eine elegante und effiziente Lösung für die gleichzeitige Iteration über mehrere Sammlungen in C#. Es vereinfacht den Prozess der Kombination von Elementen aus verschiedenen Sequenzen und macht den Code lesbarer und wartbarer.
Das obige ist der detaillierte Inhalt vonWie kann die Zip-Funktion von C# das gleichzeitige Durchlaufen mehrerer Listen vereinfachen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!