Eu só estou querendo saber por que a switch
instrução Java 7 não suporta um null
caso e, em vez disso, lança NullPointerException
? Veja a linha comentada abaixo (exemplo extraído do artigo Java Tutorialsswitch
):
{
String month = null;
switch (month) {
case "january":
monthNumber = 1;
break;
case "february":
monthNumber = 2;
break;
case "march":
monthNumber = 3;
break;
//case null:
default:
monthNumber = 0;
break;
}
return monthNumber;
}
Isso evitaria uma if
condição para verificação nula antes de cada switch
uso.
null
causará uma exceção. Faça uma if
verificação null
e entre na switch
instrução.
NullPointerException
se a expressão é avaliada null
em tempo de execução] é um resultado melhor do que ignorar silenciosamente toda a instrução switch ou optar por executar as instruções (se houver) após o etiqueta padrão (se houver).