Java-Sammlungen sortieren
Um eine Java-Sammlung zu sortieren, sind je nach den spezifischen Anforderungen mehrere Ansätze zu berücksichtigen. Eine gängige Option ist die Verwendung eines Comparators.
Verwendung eines Comparators:
Erstellen Sie eine Comparator-Klasse, die die Comparator-Schnittstelle implementiert. Innerhalb der Methode „compare()“ definieren Sie die Logik zum Vergleichen von Objekten. Um beispielsweise ein CustomObject nach seinem ID-Feld zu sortieren:
Comparator<CustomObject> comparator = new Comparator<CustomObject>() { @Override public int compare(CustomObject left, CustomObject right) { return left.getId() - right.getId(); } };
Verwenden Sie dann den Comparator, um die Sammlung mit Collections.sort() zu sortieren:
Collections.sort(list, comparator);
Alternativ, wenn Ihr CustomObject implementiert Comparable, Sie können Collections.sort(list) direkt verwenden.
Mit JDK 8 Lambda-Ausdrücken:
Lambda-Ausdrücke wurden in JDK 8 eingeführt und bieten eine praktische Möglichkeit um Komparatoren zu schreiben:
Collections.sort(list, (left, right) -> left.getId() - right.getId());
Kurzschreibweise mit JDK 8:
Für einfache Szenarien kann die folgende Kurzschreibweise zum Sortieren nach einem bestimmten Feld verwendet werden:
list.sort(Comparator.comparing(CustomObject::getId));
Letztendlich hängt der beste Ansatz zum Sortieren einer Java-Sammlung von den spezifischen Anforderungen und der verwendeten Java-Version ab.
Das obige ist der detaillierte Inhalt vonWie sortiere ich Java-Sammlungen: Komparator-, vergleichbare und Lambda-Ausdrücke?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!