首頁 > 後端開發 > C++ > 如何在 C# 中有效地將一種類型的清單轉換為另一種類型?

如何在 C# 中有效地將一種類型的清單轉換為另一種類型?

Linda Hamilton
發布: 2025-01-04 22:20:42
原創
516 人瀏覽過

How Can I Efficiently Cast a List of One Type to Another in C#?

更簡潔地轉換清單

在C# 中,可以透過明確轉換每個單獨的項目來將項目清單從一種類型轉換為另一種類型。這個過程非常耗時,並且會使程式碼變得混亂。有沒有辦法透過一次轉換整個清單來簡化這個過程?

最初的提案建議使用直接轉換:

ListOfY = (List<Y>)ListOfX;
登入後複製

雖然這看起來合乎邏輯,但這是不可能的目前的 C#。不過,還有一個更簡潔高效的解決方案:

List<Y> listOfY = listOfX.Cast<Y>().ToList();
登入後複製

此方法利用了 Cast 。擴展方法將清單中的每個項目轉換為目標類型 Y。然後對產生的 IEnumerable 呼叫 ToList() 方法。建立一個新清單包含轉換後的項目。

重要說明:

  • 包含使用 System.Linq;存取 Cast擴充方法。
  • 此方法轉換單一項目,而不是清單本身。
  • 它不支援自訂轉換運算子。
  • 如果來源物件具有明確運算符方法 (框架4.0),此方法不起作用。

以上是如何在 C# 中有效地將一種類型的清單轉換為另一種類型?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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