Chaînage avec Optional
Remplace les vérifications de null imbriquées par un pipeline d'Optional.
Comparaison de Code
✕ Java 8
String city = null;
if (user != null) {
Address addr = user.getAddress();
if (addr != null) {
city = addr.getCity();
}
}
if (city == null) city = "Unknown";
✓ Java 9+
String city = Optional.ofNullable(user)
.map(User::address)
.map(Address::city)
.orElse("Unknown");
Un problème avec ce code ? Dites-le nous.
Pourquoi la méthode moderne gagne
Enchaînable
Chaque étape .map() gère null de façon transparente.
Flux linéaire
Se lit de gauche à droite au lieu de blocs if imbriqués.
Sans risque de NPE
null est géré à chaque étape — aucune possibilité d'échec.
Ancienne Approche
Vérifications de null imbriquées
Approche Moderne
Pipeline d'Optional
Depuis JDK
9
Difficulté
Débutant
Support JDK
Chaînage avec Optional
Disponible
Disponible depuis JDK 8+ (amélioré en 9+)
Comment ça fonctionne
Optional.map() enchaîne des valeurs qui peuvent être null, court-circuitant au premier null. orElse() fournit la valeur par défaut. Cela élimine la pyramide de vérifications de null.
Documentation Associée