首頁 >後端開發 >C++ >如何使用LINQ根據CarCode取得不同的汽車物件?

如何使用LINQ根據CarCode取得不同的汽車物件?

Linda Hamilton
Linda Hamilton原創
2025-01-15 21:52:45499瀏覽

How Can LINQ Be Used to Get Distinct Car Objects Based on CarCode?

使用 LINQ 根據 CarCode 提取唯一的汽車物件

管理具有潛在冗餘屬性的物件集合通常需要高效的過濾技術。 本文示範了 LINQ 如何簡化從集合中檢索不同物件的過程,並著重於基於特定屬性的唯一性。

挑戰:

假設您有一個 Car 物件列表,每個物件都由其 CarCode 屬性唯一識別。 任務是使用 LINQ 建立一個僅包含具有唯一 CarCode 值的汽車的新集合。

解:

LINQ 的分組和選擇功能提供了簡潔的解決方案:

<code class="language-csharp">List<Car> cars = new List<Car>();
List<Car> distinctCars =
  cars
  .GroupBy(car => car.CarCode)
  .Select(g => g.First())
  .ToList();</code>

詳細說明:

GroupBy 方法將原始 cars 清單組織成群組,並依 CarCode 屬性分類。 每個組別包含共用相同 CarCode 的汽車。

隨後,Select 方法會迭代這些群組,從每個群組中選擇第一個 Car 物件。 由於每組代表一個唯一的 CarCode,因此此選擇可確保產生的集合僅包含不同的 Car 物件。

ToList() 方法將結果序列轉換為新的 List<Car>distinctCars,其中僅包含具有唯一 CarCode 值的汽車。 這可以根據識別代碼有效地消除重複的汽車物件。

以上是如何使用LINQ根據CarCode取得不同的汽車物件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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