Errors Iniciante

Trate null diretamente como um caso do switch — sem verificação separada.

✕ Java 8
// Must check before switch
if (status == null) {
    return "unknown";
}
return switch (status) {
    case ACTIVE  -> "active";
    case PAUSED  -> "paused";
    default      -> "other";
};
✓ Java 21+
return switch (status) {
    case null    -> "unknown";
    case ACTIVE  -> "active";
    case PAUSED  -> "paused";
    default      -> "other";
};
Viu um problema com este código? Nos avise.
🎯

Explícito

O tratamento de null fica visível diretamente no switch.

🛡️

Sem NPE

Fazer switch em um valor null não lança NullPointerException.

📐

Tudo em um

Todos os casos, incluindo null, em uma única expressão switch.

Abordagem Antiga
Verificação antes do switch
Abordagem Moderna
case null
Desde o JDK
21
Dificuldade
Iniciante
Caso null no switch
Disponível

Amplamente disponível desde o JDK 21 LTS (setembro de 2023)

O switch com pattern matching pode tratar null como um rótulo de caso. Isso elimina a necessidade de uma verificação de null antes do switch e torna o tratamento de null explícito e visível.

Compartilhar 𝕏 🦋 in