Maison > développement back-end > C++ > Comment puis-je supprimer des éléments d'une liste présents dans une autre liste en C# ?

Comment puis-je supprimer des éléments d'une liste présents dans une autre liste en C# ?

Mary-Kate Olsen
Libérer: 2025-01-13 14:11:42
original
270 Les gens l'ont consulté

How Can I Remove Items from One List That Are Present in Another List in C#?

Supprimer efficacement des éléments d'une liste présents dans une autre (C#)

De nombreuses tâches de programmation nécessitent de supprimer des éléments d'une liste qui apparaissent également dans une deuxième liste. Cet article présente deux méthodes efficaces en C# pour y parvenir.

Tirer parti de la Except méthode de LINQ

LINQ (Language Integrated Query) propose une solution concise utilisant la méthode Except. Cette méthode calcule la différence définie entre deux listes, renvoyant une nouvelle liste contenant uniquement des éléments uniques à la première liste. Surtout, cette approche évite de modifier les listes originales.

Voici un exemple illustrant l'utilisation de Except :

<code class="language-csharp">List<car> list1 = GetTheList();
List<car> list2 = GetSomeOtherList();
List<car> result = list2.Except(list1).ToList();</code>
Copier après la connexion

Cet extrait de code génère result, une nouvelle liste comprenant des éléments de list2 absents dans list1. La conversion ToList() est nécessaire car Except renvoie un IEnumerable au lieu d'un List.

Alternative : construire directement une nouvelle liste

Une approche plus rationalisée consiste à créer directement une nouvelle liste contenant uniquement les éléments souhaités :

<code class="language-csharp">List<car> result = GetSomeOtherList().Except(GetTheList()).ToList();</code>
Copier après la connexion

Cela permet d'obtenir le même résultat que l'exemple précédent mais sans avoir besoin d'une variable temporaire.

Considération importante :

Les deux méthodes présentées ci-dessus produisent une nouvelle liste contenant les éléments filtrés. Les listes originales (list1 et list2) restent intactes.

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