Language Débutant

Combine la vérification de type et le casting en une seule étape avec le pattern matching.

✕ Java 8
if (obj instanceof String) {
    String s = (String) obj;
    System.out.println(s.length());
}
✓ Java 16+
if (obj instanceof String s) {
    IO.println(s.length());
}
Un problème avec ce code ? Dites-le nous.
🔄

Sans casting redondant

La vérification de type et la liaison de variable se font en une seule expression.

📏

Moins de lignes

Une ligne au lieu de deux — la ligne de casting disparaît complètement.

🛡️

Portée sûre

La variable de pattern n'est dans la portée que là où le type est garanti.

Ancienne Approche
instanceof + casting
Approche Moderne
Variable de pattern
Depuis JDK
16
Difficulté
Débutant
Pattern matching pour instanceof
Disponible

Disponible depuis JDK 16 (mars 2021)

Le pattern matching pour instanceof élimine le casting redondant après une vérification de type. La variable est automatiquement limitée à la portée où le pattern correspond, rendant le code plus sûr et concis.

Partager 𝕏 🦋 in