English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Java Grund教程

Java-Flusskontrolle

Java Array

Java objektorientiert (I)

Java objektorientiert (II)

Java objektorientiert (III)

Java Ausnahmebehandlung

Java Liste (List)

Java Queue (Warteschlange)

Java Map-Kollektion

Java Set-Kollektion

Java Ein- und Ausgabe (I/O)

Java Reader/Writer

Andere Themen von Java

Java-Programm sortiert die ArrayList der benutzerdefinierten Objekte nach Eigenschaft

Java Beispiele大全

In diesem Programm lernen Sie, wie Sie eine ArrayList von benutzerdefinierten Objekten in Java nach einer bestimmten Eigenschaft sortieren.

Beispiel: Sortieren Sie die ArrayList der benutzerdefinierten Objekte nach Eigenschaft

import java.util.*;
public class CustomObject {
    private String customProperty;
    public CustomObject(String property) {
        this.customProperty = property;
    }
    public String getCustomProperty() {
        return this.customProperty;
    }
    public static void main(String[] args) {
        ArrayList<Customobject> list = new ArrayList<>();
        list.add(new CustomObject("Z"));
        list.add(new CustomObject("A"));
        list.add(new CustomObject("B"));
        list.add(new CustomObject("X"));
        list.add(new CustomObject("Aa"));
        list.sort((o1, o2) -> o1.getCustomProperty().compareTo(o2.getCustomProperty()));
        for (CustomObject obj : list) {
            System.out.println(obj.getCustomProperty());
        }
    }
}

Wenn Sie das Programm ausführen, wird ausgegeben:

A
Aa
B
X
Z

In dem obigen Programm definieren wir eine CustomObject-Klasse mit dem String-Attribut customProperty

Wir haben auch einen Konstruktor mit Initialisierungseigenschaften und eine Getter-Funktion getCustomProperty () hinzugefügt, um customProperty zurückzugeben

Im main () -Methoden erstellen wir eine Liste von Arraylisten von benutzerdefinierten Objekten und verwenden5Objekte wurden initialisiert.

um die Liste nach einem bestimmten Attribut zu sortieren, verwenden wir den sort () -Methoden der Liste. Der sort () -Methoden akzeptiert die zu sortierende Liste (die endgültige sortierte Liste ist ebenfalls die gleiche) und einen Comparator

In unserem Beispiel ist der Comparator ein Lambda-Ausdruck

  • von der Liste o1und o2zwei Objekte

  • verwendet compareTo () -Methode, um zwei Objekte customProperty zu vergleichen

  • wenn o1wird das Attribut o2wird das Attribut, wird der letzte positive Wert zurückgegeben; wenn o1wird das Attribut o2wird der letzte negative Wert zurückgegeben; wenn sie gleich sind, wird null zurückgegeben.

Daraufhin wird die Liste (list) nach dem kleinsten bis zum größten Attribut sortiert und in die Liste (list) zurückgespeichert

Java Beispiele大全