Heim > Java > javaLernprogramm > Hauptteil

Wie entferne ich Duplikate aus einer Liste und behalte gleichzeitig die Reihenfolge bei?

Patricia Arquette
Freigeben: 2024-11-04 07:17:31
Original
691 Leute haben es durchsucht

How to Remove Duplicates from a List While Preserving Order?

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>
Nach dem Login kopieren

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>
Nach dem Login kopieren

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!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage