首頁 >後端開發 >C++ >如何使用 LINQ 基於屬性刪除重複物件?

如何使用 LINQ 基於屬性刪除重複物件?

Susan Sarandon
Susan Sarandon原創
2025-01-15 21:57:45742瀏覽

How to Remove Duplicate Objects Based on a Property Using LINQ?

使用LINQ來擷取基於屬性的唯一物件

在處理集合時,您可能會遇到需要根據特定物件屬性移除重複項的情況。假設您有一個Car物件的集合,這些物件由其CarCode屬性唯一識別。但是,該集合可能包含具有相同CarCode的重複項。本文將示範如何利用LINQ來消除這些重複項,並只保留唯一的Car實例。

為此,我們可以採用組合分組和選擇的技術。以下程式碼片段展示了這種方法:

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

在此程式碼中,我們首先使用GroupBy方法按其CarCode屬性對汽車進行分組。此操作為每個唯一的CarCode建立群組。隨後,我們利用Select方法使用g.First()從每組中提取第一輛車。此步驟可確保只保留每個唯一CarCode的一個Car物件。

透過執行此LINQ表達式,您將獲得一個名為distinct的新集合,該集合僅包含基於其CarCode屬性的唯一Car物件。

以上是如何使用 LINQ 基於屬性刪除重複物件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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