Errors Iniciante

Obtenha um valor não-null com um padrão claro, sem precisar de ternário.

✕ Java 8
String name = input != null
    ? input
    : "default";
// easy to get the order wrong
✓ Java 9+
String name = Objects
    .requireNonNullElse(
        input, "default"
    );
Viu um problema com este código? Nos avise.
📖

Intenção clara

O nome do método descreve exatamente o que ele faz.

🛡️

Padrão null-safe

O valor padrão também é verificado contra null.

📏

Legível

Melhor que ternário para lógica simples de null-ou-padrão.

Abordagem Antiga
Verificação de null com ternário
Abordagem Moderna
requireNonNullElse()
Desde o JDK
9
Dificuldade
Iniciante
Objects.requireNonNullElse()
Disponível

Amplamente disponível desde o JDK 9 (setembro de 2017)

O requireNonNullElse retorna o primeiro argumento se não for null, caso contrário retorna o segundo. O valor padrão também não pode ser null — ele lança NPE se ambos forem null, capturando bugs antecipadamente.

Compartilhar 𝕏 🦋 in