同時迭代多個列表或陣列:C# 中的Zip 函數
為了使用單一foreach 語句有效地迭代多個集合,C#提供了內建Zip 功能。此操作自 .NET 4 起可用,並簡化了將不同序列中的元素配對的過程。
要使用 Zip 函數,只需在兩個或多個集合上呼叫它即可。例如,考慮以下包含兩個清單的範例:
var numbers = new [] { 1, 2, 3, 4 }; var words = new [] { "one", "two", "three", "four" };
使用Zip 函數,您可以建立一個組合兩個清單中的元素的新序列,從而產生元組序列:
var numbersAndWords = numbers.Zip(words, (n, w) => new { Number = n, Word = w });
現在,您可以使用foreach 循環來迭代numbersAndWords序列:
foreach(var nw in numbersAndWords) { Console.WriteLine(nw.Number + nw.Word); }
這將列印連接值:
1one 2two 3three 4four
或者,您也可以使用 Tuple 及其靜態 Tuple,而不是使用帶有命名欄位的匿名類型。創建助手:
foreach (var nw in numbers.Zip(words, Tuple.Create)) { Console.WriteLine(nw.Item1 + nw.Item2); }
Zip 函數提供了一個優雅且高效的解決方案,用於在 C# 中同時迭代多個集合。它簡化了組合不同序列元素的過程,使程式碼更具可讀性和可維護性。
以上是C# 的 Zip 函數如何簡化同時迭代多個列表的過程?的詳細內容。更多資訊請關注PHP中文網其他相關文章!