Maison > développement back-end > C++ > Comment LINQ peut-il être utilisé pour obtenir des objets de voiture distincts basés sur CarCode ?

Comment LINQ peut-il être utilisé pour obtenir des objets de voiture distincts basés sur CarCode ?

Linda Hamilton
Libérer: 2025-01-15 21:52:45
original
498 Les gens l'ont consulté

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

Utiliser LINQ pour extraire des objets de voiture uniques basés sur CarCode

La gestion de collections d'objets aux propriétés potentiellement redondantes nécessite souvent des techniques de filtrage efficaces. Cet article montre comment LINQ simplifie le processus de récupération d'objets distincts d'une collection, en se concentrant sur l'unicité basée sur une propriété spécifique.

Le défi :

Supposons que vous ayez une liste d'objets Car, chacun identifié de manière unique par sa propriété CarCode. La tâche consiste à utiliser LINQ pour créer une nouvelle collection contenant uniquement des voitures avec des CarCode valeurs uniques.

La solution :

Les capacités de regroupement et de sélection de LINQ offrent une solution concise :

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

Explication détaillée :

La méthode GroupBy organise la liste cars originale en groupes, classés par la propriété CarCode. Chaque groupe contient des voitures partageant le même CarCode.

Ensuite, la méthode Select parcourt ces groupes, en sélectionnant le premier objet Car de chacun. Puisque chaque groupe représente un CarCode unique, cette sélection garantit que la collection résultante ne contient que des objets Car distincts.

La méthode ToList() convertit la séquence résultante en un nouveau List<Car>, distinctCars, contenant uniquement des voitures avec des valeurs CarCode uniques. Cela élimine efficacement les objets de voiture en double en fonction de leur code d'identification.

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