Maison > développement back-end > C++ > Comment puis-je supprimer efficacement des éléments d'une liste qui existent dans une autre ?

Comment puis-je supprimer efficacement des éléments d'une liste qui existent dans une autre ?

DDD
Libérer: 2025-01-13 14:21:44
original
548 Les gens l'ont consulté

How Can I Efficiently Remove Items from One List That Exist in Another?

Supprimer un élément d'une autre liste

Question :

Comment parcourir une liste générique d'éléments et les supprimer d'une autre liste d'éléments ?

Scène :

Considérons l'exemple hypothétique suivant :

<code>List<汽车> list1 = GetTheList();
List<汽车> list2 = GetSomeOtherList();</code>
Copier après la connexion

L'objectif est d'utiliser une boucle foreach pour parcourir la liste1 et supprimer tous les éléments également présents dans la liste2. Cependant, la boucle foreach ne fournit pas de méthodes basées sur des index.

Réponse :

Pour y parvenir vous pouvez utiliser la méthode Except :

<code>List<汽车> result = list2.Except(list1).ToList();</code>
Copier après la connexion

Cela créera un nouveau résultat de liste contenant des éléments de la liste2 qui ne sont pas présents dans la liste1. La méthode Except ne modifie pas la liste d'origine.

Optimisation :

Pour optimiser davantage votre code, vous pouvez éliminer le besoin de variables temporaires :

<code>List<汽车> result = GetSomeOtherList().Except(GetTheList()).ToList();</code>
Copier après la connexion

Il est important de noter que Except renvoie une nouvelle liste contenant les différences calculées, il ne modifie donc ni list1 ni list2.

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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal