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>
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>
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>
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!