Comment supprimer efficacement les doublons d'une liste
Vous rencontrez un scénario dans lequel vous devez supprimer les éléments en double d'une liste. Cependant, votre approche actuelle, comme vous le décrivez dans l'extrait de code, ne donne pas les résultats souhaités.
Une méthode efficace pour supprimer les doublons tout en conservant l'ordre d'origine consiste à utiliser un LinkedHashSet. Cette structure de données basée sur un ensemble supprime automatiquement les éléments en double tout en préservant l'ordre d'insertion.
Pour y parvenir, vous pouvez convertir la liste existante en LinkedHashSet en utilisant le code suivant :
<code class="java">List<Customer> dedupeCustomers = new ArrayList<>(new LinkedHashSet<>(customers));</code>
Alternativement , si vous préférez modifier la liste d'origine, vous pouvez opter pour cette approche :
<code class="java">Set<Customer> dedupeCustomers = new LinkedHashSet<>(customers); customers.clear(); customers.addAll(dedupeCustomers);</code>
Cette méthode crée d'abord un nouveau LinkedHashSet contenant les éléments uniques de la liste d'origine. La liste d'origine est ensuite effacée et remplacée par les éléments de l'ensemble dédupliqué, supprimant ainsi efficacement tous les doublons.
En mettant en œuvre l'une ou l'autre de ces solutions, vous pouvez supprimer efficacement les doublons de votre liste, en garantissant que chaque élément n'apparaît qu'une seule fois tout en préservant la commande originale si vous le souhaitez.
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!