So verwenden Sie die Records-Klasse in Java 14, um automatischen Vergleich und Sortierung zu implementieren
Java 14 führt eine neue Klasse namens Records-Klasse ein, die uns eine prägnante und leistungsstarke Möglichkeit bietet, unveränderliche Datenklassen zu definieren. Die Records-Klasse verfügt über die Funktion, automatisch Getter-Methoden, equal()-Methoden und hashCode()-Methoden für jedes Feld zu generieren, was den Vergleich und die Sortierung sehr bequem macht. In diesem Artikel demonstrieren wir anhand von Beispielcode, wie die Records-Klasse in Java 14 verwendet wird, um einen automatischen Vergleich und eine automatische Sortierung zu implementieren.
Der erste Schritt besteht darin, eine Records-Klasse zu definieren. Nehmen wir als Beispiel die Schülerklasse. Angenommen, ein Schüler hat drei Felder: Name, Alter und Noten. Sie können eine Records-Klasse wie folgt definieren:
public record Student(String name, int age, double score) {}
In diesem Beispiel verwenden wir das Schlüsselwort „record“, um eine Records-Klasse namens „Student“ zu definieren und drei Felder anzugeben: Name, Alter und Punktzahl. Alle Felder der Records-Klasse generieren automatisch entsprechende Getter-Methoden.
Als nächstes können wir einige Student-Objekte erstellen, vergleichen und sortieren. Hier ist ein Beispielcode:
import java.util.ArrayList; import java.util.Collections; import java.util.List; public class Main { public static void main(String[] args) { List<Student> students = new ArrayList<>(); students.add(new Student("Alice", 20, 85.0)); students.add(new Student("Bob", 19, 90.0)); students.add(new Student("Charlie", 21, 80.0)); // 自动比较和排序 Collections.sort(students); for (Student student : students) { System.out.println(student); } } }
In diesem Beispiel erstellen wir eine Liste mit dem Namen „students“, die drei Student-Objekte enthält. Dann verwenden wir die Methode Collections.sort(), um diese Liste zu sortieren. Da es sich bei der Student-Klasse um eine Records-Klasse handelt, implementiert sie automatisch die Comparable-Schnittstelle, sodass Vergleiche und Sortierungen durch Aufrufen der Methode „compareTo()“ dieser Schnittstelle durchgeführt werden.
Schließlich können wir die sortierten Ergebnisse ausdrucken, indem wir die Schülerliste durchgehen. Da die Student-Klasse automatisch die toString()-Methode generiert, können wir System.out.println() direkt zum Drucken des Student-Objekts verwenden.
Das Ausgabeergebnis lautet wie folgt:
Student[name=Alice, age=20, score=85.0] Student[name=Bob, age=19, score=90.0] Student[name=Charlie, age=21, score=80.0]
Wie wir sehen können, wurden die Student-Objekte entsprechend ihrer Noten von hoch nach niedrig sortiert.
In diesem Beispiel zeigen wir, wie man die Records-Klasse in Java 14 verwendet, um einen automatischen Vergleich und eine automatische Sortierung zu implementieren. Die Records-Klasse bietet uns eine übersichtliche Möglichkeit, unveränderliche Datenklassen zu definieren und generiert automatisch Getter-Methoden, equal()-Methoden und hashCode()-Methoden für jedes Feld. Durch die einfache Implementierung der Comparable-Schnittstelle können wir problemlos automatische Vergleiche und Sortierungen durchführen. Dies bietet Java-Programmierern eine effizientere und komfortablere Arbeitsweise.
Das obige ist der detaillierte Inhalt vonSo verwenden Sie die Records-Klasse in Java 14 für den automatischen Vergleich und die Sortierung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!