Cette fonctionnalité Java divise le code par 2 (et personne n'en parle)
Le problème qu'on connaît tous.
En Java, nous écrivons souvent ce type de code répétitif avec vérification puis cast manuel.
Les inconvénients :
• Code répétitif (vérification puis cast)
• Risque d'erreur de cast
• Lisibilité réduite
• Variables temporaires inutiles
La solution moderne : Pattern Matching
Depuis Java 16, vous pouvez combiner vérification et cast en une seule étape.
Comment ça marche ?
1• On vérifie le type de obj
2• Si c'est bien une String, elle est automatiquement castée dans la variable s
3• La variable s est directement utilisable dans le bloc if
Les avantages concrets
✅ Moins de code : Une ligne au lieu de deux
✅ Plus sûr : Le compilateur garantit la cohérence des types
✅ Plus lisible : L'intention est immédiatement claire
✅ Moins d'erreurs : Impossible d'oublier le cast ou de se tromper de type
À retenir
Le Pattern Matching n'est pas juste une syntaxe raccourcie, c'est une évolution vers un code plus expressif et moins sujet aux erreurs.
#Java #PatternMatching #DeveloppementLogiciel #BonnesPratiques #Java16
static double getDoubleUsingSwitch(Object o) {
return switch (o) {
case Integer i -> i.doubleValue();
case Float f -> f.doubleValue();
case String s -> Double.parseDouble(s);
default -> 0d;
};
}
Src: https://www.baeldung.com/java-switch-pattern-matching#1-type-pattern
Même plus besoin de "instanceof"
Ça ne "divise pas le code par 2" non plus on ne va pas jusque là. Certes au lieu de 2 lignes tu en a 1 mais "les calculs sont pas bons Kevin". Mais je suis d'accord c'est moins "verbeux" même si je pense qu'il y a mieux comme implémentation 🙂