Language Fortgeschritten

Records direkt in Mustern destrukturieren – Felder in einem Schritt extrahieren.

✕ Java 8
if (obj instanceof Point) {
    Point p = (Point) obj;
    int x = p.getX();
    int y = p.getY();
    System.out.println(x + y);
}
✓ Java 21+
if (obj instanceof Point(int x, int y)) {
    IO.println(x + y);
}
Problem mit diesem Code entdeckt? Sag uns Bescheid.
🎯

Direkter Zugriff

Record-Komponenten zugreifen, ohne Accessoren manuell aufzurufen.

🪆

Verschachtelbar

Muster können verschachtelt werden – innere Records in einem einzigen Ausdruck abgleichen.

📏

Kompakter Code

Fünf Zeilen werden zu zwei – weniger Zeremonie, gleiche Klarheit.

Alter Ansatz
Manueller Zugriff
Moderner Ansatz
Destrukturierung
Seit JDK
21
Schwierigkeitsgrad
Fortgeschritten
Record-Muster (Destrukturierung)
Verfügbar

Seit JDK 21 LTS allgemein verfügbar (Sept. 2023)

Record-Muster ermöglichen die Zerlegung der Komponenten eines Records direkt in instanceof und switch. Verschachtelte Muster werden ebenfalls unterstützt, was tiefes Matching ohne Zwischenvariablen ermöglicht.

Teilen 𝕏 🦋 in