So entfernen Sie Duplikate effizient aus einer Liste
Sie stoßen auf ein Szenario, in dem Sie doppelte Elemente aus einer Liste entfernen müssen. Ihr aktueller Ansatz, wie Sie ihn im Codeausschnitt beschreiben, führt jedoch nicht zu den gewünschten Ergebnissen.
Eine effektive Methode, Duplikate zu entfernen und gleichzeitig die ursprüngliche Reihenfolge beizubehalten, ist die Verwendung eines LinkedHashSet. Diese satzbasierte Datenstruktur verwirft automatisch doppelte Elemente und behält dabei die Einfügereihenfolge bei.
Um dies zu erreichen, können Sie die vorhandene Liste mit dem folgenden Code in ein LinkedHashSet konvertieren:
<code class="java">List<Customer> dedupeCustomers = new ArrayList<>(new LinkedHashSet<>(customers));</code>
Alternativ Wenn Sie lieber die ursprüngliche Liste ändern möchten, können Sie sich für diesen Ansatz entscheiden:
<code class="java">Set<Customer> dedupeCustomers = new LinkedHashSet<>(customers); customers.clear(); customers.addAll(dedupeCustomers);</code>
Diese Methode erstellt zunächst ein neues LinkedHashSet, das die eindeutigen Elemente aus der ursprünglichen Liste enthält. Die ursprüngliche Liste wird dann gelöscht und durch die Elemente des deduplizierten Satzes ersetzt, wodurch alle Duplikate effektiv entfernt werden.
Durch die Implementierung einer dieser Lösungen können Sie Duplikate effizient aus Ihrer Liste entfernen und so sicherstellen, dass jedes Element nur einmal vorkommt und gleichzeitig erhalten bleibt auf Wunsch die ursprüngliche Bestellung.
Das obige ist der detaillierte Inhalt vonWie entferne ich Duplikate aus einer Liste und behalte gleichzeitig die Reihenfolge bei?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!