提升 C# 陣列串聯效能:Concat 的卓越替代方案
C# 的 Concat
方法提供了一個簡單的陣列連接解決方案。 然而,在處理大型數組時,其性能可能不是最佳的。為了顯著提高數組串聯的效率,請考慮以下替代方案:
<code class="language-csharp">int[] x = new int[] { 1, 2, 3 }; int[] y = new int[] { 4, 5 }; int[] z = new int[x.Length + y.Length]; Array.Copy(x, z, x.Length); Array.Copy(y, 0, z, x.Length, y.Length); Debug.Assert(z.SequenceEqual(new int[] { 1, 2, 3, 4, 5 }));</code>
此方法直接分配一個足夠大小的新陣列 z
來容納 x
和 y
。然後,它利用 Array.Copy
有效地將 x
和 y
的元素傳送到 z
中。這可以避免建立中間數組,從而加快執行速度,尤其是對於較大的資料集。
重要注意事項: 雖然 Concat
仍然適用於效能並不重要的小型陣列,但上述方法為涉及大型陣列的場景提供了顯著的效能優勢。
以上是如何優化 C# 中的陣列串聯以獲得更好的效能?的詳細內容。更多資訊請關注PHP中文網其他相關文章!