首頁 >後端開發 >C++ >如何有效率地初始化具有非預設值的 C# 陣列?

如何有效率地初始化具有非預設值的 C# 陣列?

DDD
DDD原創
2025-01-04 14:04:39331瀏覽

How to Efficiently Initialize C# Arrays with Non-Default Values?

在 C# 中使用非預設值填入數組元素

C# 值類型數組會自動使用該類型的預設值進行初始化。雖然此行為對於使用預設值初始化陣列很方便,但可能需要使用非預設值初始化元素。

提供的程式碼中提到的一種方法涉及迭代數組並單獨設定每個元素。對於大型數組,此方法可能效率低。另一種方法是利用 Enumerable.Repeat() 方法與 ToArray() 結合使用:

bool[] abValues = Enumerable.Repeat(true, 1000000).ToArray();

此程式碼使用值 true 初始化 abValues 陣列的每個元素,克服了預設初始化的問題。 Enumerable.Repeat() 方法產生指定值的無限序列,ToArray() 根據此序列建立陣列。

此方法比手動迭代效率更高,特別是對於大型數組,因為它利用 Enumerable.Repeat() 的固有屬性,該屬性針對創建重複序列進行了最佳化。

以上是如何有效率地初始化具有非預設值的 C# 陣列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn