Me pregunto por qué la switch
declaración de Java 7 no admite un null
caso y en su lugar arroja NullPointerException
. Vea la línea comentada a continuación (ejemplo tomado del artículo de Tutoriales de Java enswitch
):
{
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;
}
Esto habría evitado una if
condición de verificación nula antes de cada switch
uso.
null
causará una excepción. Realice una if
verificación para null
, luego vaya a la switch
declaración.
NullPointerException
si la expresión se evalúa como null
en tiempo de ejecución] es un mejor resultado que omitir silenciosamente toda la declaración del interruptor o elegir ejecutar las declaraciones (si las hay) después del etiqueta predeterminada (si existe).