Ich habe 2 Textdateien mit Daten. Ich lese diese Dateien mit BufferReader
und setze die Daten einer Spalte pro Datei in List<String>
.
Ich habe Daten in jedem einzelnen dupliziert, aber ich brauche eindeutige Daten in der ersten List
, um mit den duplizierten Daten in der zweiten List
konfrontiert zu werden.
Wie kann ich eindeutige Werte von List
bekommen?
Es kann eine Zeile mit einem intermediate Set
:
Verwenden Sie in Java 8 distinct()
in einem Stream:
Alternativ können Sie überhaupt keine Liste verwenden. Verwenden Sie einfach einen Satz (wie HashSet) von Anfang an für die Sammlung, die nur eindeutige Werte enthalten soll.
Konvertiere ArrayList
in eine HashSet
.
Wenn Sie das Set aus irgendeinem Grund später in eine Liste konvertieren möchten, können Sie das tun, aber wahrscheinlich wird es keine Notwendigkeit geben.
%Vor%ich realisiere nur eine lösung kann es für andere personen hilfreich sein. Zuerst werden doppelte Werte von BufferReader aufgefüllt.
%Vor%Um eindeutige Werte zu extrahieren, erstelle ich einfach eine neue ArrayList wie unten:
%Vor%Viele Post im Internet sprechen alle meine Arraylist zu einer List, Set, HashTable oder TreeSet zuordnen. Kann jemand den Unterschied in der Theorie erklären und welcher ist der beste in der Praxis? Für deine Zeit Jungs.
Tags und Links java list unique-values