首頁 > 後端開發 > C++ > 如何使用非預設值自動填入 C# 陣列?

如何使用非預設值自動填入 C# 陣列?

Barbara Streisand
發布: 2024-12-30 20:35:17
原創
944 人瀏覽過

How Can I Auto-Populate C# Arrays with Non-Default Values?

使用非預設值自動填入C# 陣列

在C# 中,未初始化的值類型陣列會自動使用其各自的預設值進行播種(例如,0 代表int,false 代表bool)。但是,是否可以繞過這個並為所有元素設置自訂種子值?

使用Array.Fill()

Java 的Arrays.fill() 方法是在C# 中不可用,因此使用for 迴圈的迭代方法仍然是標準方法。迭代數組可能看起來效率低下,但它是直接操作底層記憶體時的最佳解決方案。

替代方法

儘管缺少內建方法,還有一種使用LINQ(語言整合)的替代方法Query):

bool[] abValues = Enumerable.Repeat(true, 1000000).ToArray();
登入後複製

此方法利用Repeat() 和ToArray() 方法產生重複1,000,000次的真值序列,然後將其轉換為陣列。此方法可確保在初始化數組之前將所有元素設為 true。值得注意的是,與迭代方法相比,使用 LINQ 可能會帶來額外的開銷。

記憶體分配注意事項

如所懷疑的,預設值在 C# 的記憶體分配過程中根深蒂固。對於數組。但是,使用 Repeat() 方法可以透過建立具有所需值的新陣列來繞過自動初始化,從而有效地規避此行為。

以上是如何使用非預設值自動填入 C# 陣列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板