In diesem Artikel werden zwei Methoden zum Löschen von repetitiven Elementen von ArrayList gelöscht, die Hashset und LinkedHashset verwenden.
ArrayList ist einer der am häufigsten verwendeten Sammlungstypen in Java. Es ermöglicht es, mehrere Nullelemente, wiederholte Elemente flexibel hinzuzufügen und die Reihenfolge der Elementeinfügung beizubehalten. Beim Codieren stoßen wir häufig auf die Anforderungen, die Wiederholungselemente aus der erstellten up -ArrayList löschen müssen.
Methode 1: Verwenden Sie Hashset, um wiederholte Elemente in ArrayList zu löschen
Bei dieser Methode verwenden wir Hashset, um wiederholte Elemente zu löschen. Wie Sie wissen, erlaubt Hashset keine wiederholten Elemente. Wir verwenden dieses Attribut von Hashset, um die doppelten Elemente in der gebauten ArrayList zu löschen. Diese Methode hat jedoch einen Nachteil. Das heißt, es wird die Einfügungsreihenfolge der Elemente in ArrayList löschen. Dies bedeutet, dass nach dem Löschen wiederholter Elemente die Reihenfolge des Elements nicht richtig ist. Schauen wir uns das folgende Beispiel an.
Java.util.ArrayList; . / Druckliste withdupliceElements System.print ("ArrayList mit doppelten Elementen:"); String> ts = New ArrayList <String> (set);Ausgabe:
ArrayList mit doppelten Elementen: [Java, J2ee, JSP, Servlets, Java, Struts, JSP] ArrayList Nach dem Rückschlag doppelter Elemente: [Java, JSP, J2ee, StreTs]
Achten Sie auf die Ausgabeergebnisse. Sie werden feststellen, dass das Element nach dem Löschen doppelter Elemente umgestaltet wird. Nicht mehr in der Reihenfolge der Insertion angeordnet. Wenn Sie nach dem Löschen wiederholter Elemente die Reihenfolge der Elemente beibehalten möchten, wird nicht empfohlen, diese Methode anzuwenden. Es gibt eine andere Methode, die sicherstellen kann, dass sich die Einfügungsreihenfolge des Elements nach dem Löschen der wiederholten Elemente nicht ändert. Das heißt LinkedHashset.
Methode 2: Verwenden Sie LinkedHashset, um die wiederholten Elemente in ArrayList zu löschen
In dieser Methode verwenden wir LinkedHashset, um wiederholte Elemente in ArrayList zu löschen. Wie Sie wissen, erlaubt LinkedHashset keine sich wiederholenden Elemente, während die Reihenfolge der Elementeinfügung beibehalten wird. Diese beiden Attribute von LinkedHashset können sicherstellen, dass nach dem Löschen wiederholter Elemente in ArrayList die Reihenfolge der Einfügungselemente weiterhin beibehalten wird. Siehe das folgende Beispiel.
Java.util.ArrayList; ); ("ArrayList mit doppelten Elementen:"); ; // Druckliste mit Dupliceements System.out.print ("ArrayList nach Entfernen von doppelten Elementen:");Ausgabe:
ArrayList mit doppelten Elementen: [Java, J2ee, JSP, Servlets, Java, Struts, JSP] ArrayList nach dem Rückschlag doppelter Elemente: [Java, JSPE, Service UTS]
Achten Sie auf die Ausgabe. Sie können feststellen, dass nach dem Löschen der sich wiederholenden Elemente in ArrayList noch die Reihenfolge der Einfügung beibehalten wird.
Das obige ist der gesamte Inhalt dieses Artikels.