Ein Element aus einer Liste entfernen, das in einer anderen Liste vorhanden ist
Die Aufgabe besteht darin, eine generische Liste zu durchlaufen und in einer anderen Liste enthaltene Elemente zu entfernen. Betrachten Sie das folgende hypothetische Szenario:
<code>List<car> list1 = GetTheList(); List<car> list2 = GetSomeOtherList();</code>
Das Ziel besteht darin, eine foreach-Schleife zu verwenden, um Liste1 zu durchlaufen und alle Elemente zu entfernen, die auch in Liste2 vorhanden sind. Allerdings ist die foreach-Schleife nicht indexbasiert, was die Aufgabe erschwert.
Lösung mit der Except-Methode
Um dieser Herausforderung zu begegnen, können wir die Except-Methode verwenden, die Elemente aus einer Liste ausschließt, die in einer anderen Liste vorhanden sind:
<code>List<car> result = list2.Except(list1).ToList();</code>
Dadurch wird ein neues Listenergebnis erstellt, das Elemente in Liste2 enthält, die in Liste1 nicht vorhanden sind. Wir können den Code sogar vereinfachen, indem wir temporäre Variablen eliminieren:
<code>List<car> result = GetSomeOtherList().Except(GetTheList()).ToList();</code>
Es ist wichtig zu beachten, dass Except eine neue Liste generiert, ohne die ursprünglichen Listen zu ändern.
Das obige ist der detaillierte Inhalt vonWie entferne ich effizient Elemente aus einer Liste, die in einer anderen vorhanden sind?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!