首頁 > 後端開發 > C++ > LINQ 如何有效地將物件清單分組為清單清單?

LINQ 如何有效地將物件清單分組為清單清單?

Barbara Streisand
發布: 2025-01-13 10:29:43
原創
281 人瀏覽過

How Can LINQ Efficiently Group a List of Objects into a List of Lists?

使用LINQ將物件分組到清單的清單中

處理複雜資料結構時,有效管理和組織資料至關重要。 C# 中強大的 LINQ 函式庫允許進行簡潔且有效率的資料操作。本問題探討了一個特定場景,其中需要根據特定欄位對物件清單進行分組,從而產生一個新的清單的清單。

提供的程式碼片段顯示了一個名為 User 的類,它具有 UserID、UserName 和 GroupID 屬性。建立了一個包含不同群組 ID 的使用者範例清單。目標是使用 LINQ 依其群組關聯對這些使用者進行分組。

最初的方法使用 GroupBy 來實現這一點,但遇到了返回鍵列表的問題。為了解決這個問題,需要稍微修改一下方法。以下程式碼示範了正確的實作:

<code class="language-csharp">var groupedCustomerList = userList
    .GroupBy(u => u.GroupID)
    .Select(grp => grp.ToList())
    .ToList();</code>
登入後複製
  1. GroupBy: GroupBy 方法應用於 userList。它遍歷列表,使用 GroupID 屬性作為鍵來對使用者進行分組。
  2. Select: GroupBy 的結果是群組的序列,其中每個群組代表具有相同 GroupID 的使用者。 Select 方法用於將每組轉換為新的 List
  3. ToList: 最終的 ToList 呼叫將群組清單序列轉換為實際的 List>。

這種方法有效地按 GroupID 對使用者進行分組,產生一個分層的清單的清單。每個外部清單代表一個群組,每個內部清單包含屬於該群組的使用者。此結構能夠輕鬆存取和操作分組的使用者資料。

以上是LINQ 如何有效地將物件清單分組為清單清單?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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