Sentencia Switch en Java
Sentencias en Java Switch
En lugar de escribir muchas declaraciones if..else, puede usar la declaración switch.
La instrucción switch, selecciona uno de los muchos bloques de código que se ejecutarán:
En lugar de escribir muchas declaraciones if..else, puede usar la declaración switch.
La instrucción switch, selecciona uno de los muchos bloques de código que se ejecutarán:
switch(expression) {
case x:
// Bloque de código
break;
case y:
// Bloque de código
break;
default:
// Bloque de código
}
Así es como funciona:
🟡 La expresión switch se evalúa una vez.
🟡 El valor de la expresión se compara con los valores de cada case.
🟡 Si hay una coincidencia, se ejecuta el bloque de código asociado.
🟡 Las palabras clave break y default son opcionales y se describirán más adelante en este capítulo.
En el ejemplo siguiente se utiliza el número de día de la semana para calcular el nombre del día de la semana:
int day = 4;
switch (day) {
case 1:
System.out.println("Lunes");
break;
case 2:
System.out.println("Martes");
break;
case 3:
System.out.println("Miercoles");
break;
case 4:
System.out.println("Jueves");
break;
case 5:
System.out.println("Viernes");
break;
case 6:
System.out.println("Sabado");
break;
case 7:
System.out.println("Domingo");
break;
}
// Salida "Jueves" (día 4)
Cuando Java llega a una palabra clave break, sale del bloque del interruptor.
Esto detendrá la ejecución de más código y pruebas de casos dentro de el bloque.
Cuando se encuentra una coincidencia y el trabajo está hecho, es hora de un descanso. No hay necesidad de más pruebas.
Una interrupción puede ahorrar mucho tiempo de ejecución porque "ignora" la ejecución de todo el resto del código en el bloque de interruptores.
La palabra clave default especifica algún código para ejecutar si no hay coincidencia de casos:
int day = 4;
switch (day) {
case 6:
System.out.println("Hoy es Sábado");
break;
case 7:
System.out.println("Hoy es Domingo");
break;
default:
System.out.println("Esperando el fin de semana");
}
// Salida "Esperando el fin de semana"