Maison > développement back-end > C++ > Comment LINQ peut-il regrouper une liste d'objets dans des listes imbriquées ?

Comment LINQ peut-il regrouper une liste d'objets dans des listes imbriquées ?

Susan Sarandon
Libérer: 2025-01-13 11:35:43
original
665 Les gens l'ont consulté

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

Regrouper la liste d'objets en listes imbriquées à l'aide de LINQ

Une organisation efficace des données est cruciale dans le domaine de la programmation. LINQ fournit un mécanisme puissant pour regrouper des objets en fonction de conditions spécifiques. Cet article va résoudre un problème courant : regrouper une liste d'objets dans une nouvelle liste contenant des listes imbriquées.

Considérez la définition de classe suivante :

<code>public class User
{
    public int UserID { get; set; }
    public string UserName { get; set; }
    public int GroupID { get; set; }
}</code>
Copier après la connexion

Afin de regrouper les utilisateurs en fonction de leur GroupID, nous pouvons utiliser le code suivant :

<code>var groupedCustomerList = userList
    .GroupBy(u => u.GroupID)
    .Select(grp => grp.ToList())
    .ToList();</code>
Copier après la connexion

Interprétation du code :

  1. GroupBy : cette clause divise la liste d'utilisateurs d'origine en plusieurs groupes en fonction de l'attribut GroupID.
  2. Sélectionner : Il convertit ensuite chaque résultat (c'est-à-dire un ensemble d'utilisateurs avec le même GroupID) en une liste d'utilisateurs.
  3. ToList : Enfin, le résultat est converti en une nouvelle liste de listes imbriquées, chaque liste imbriquée contenant des utilisateurs du même groupe.

Cette expression LINQ regroupe intelligemment la liste originale des utilisateurs par GroupID, en les présentant de manière organisée. Chaque liste imbriquée dans le résultat final représente un groupe d'utilisateurs partageant le même GroupID.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal