Errors Principiante

Ottieni un valore non-null con un default chiaro, senza ternario.

✕ Java 8
String name = input != null
    ? input
    : "default";
// easy to get the order wrong
✓ Java 9+
String name = Objects
    .requireNonNullElse(
        input, "default"
    );
Vedi un problema con questo codice? Faccelo sapere.
📖

Intento chiaro

Il nome del metodo descrive esattamente cosa fa.

🛡️

Default null-safe

Anche il valore di default viene controllato per null.

📏

Leggibile

Meglio del ternario per la semplice logica null-o-default.

Approccio Vecchio
Controllo null ternario
Approccio Moderno
requireNonNullElse()
Dal JDK
9
Difficoltà
Principiante
Objects.requireNonNullElse()
Disponibile

Ampiamente disponibile dal JDK 9 (settembre 2017)

requireNonNullElse restituisce il primo argomento se non-null, altrimenti il secondo. Il default stesso non può essere null — lancia NPE se entrambi sono null, catturando i bug precocemente.

Condividi 𝕏 🦋 in