switch enum en Java
- Conmutar Enum usando el conmutador tradicional y Case en Java
- Conmutar en Enum Usando el Switch Mejorado y Case en Java 12
Este artículo explica cómo utilizar switch
sobre enum en Java. Vamos a repasar dos formas de utilizar la sentencia switch
con enum.
Conmutar Enum usando el conmutador tradicional y Case en Java
En el ejemplo, creamos un enum dentro de la clase SwitchEnum
y lo llamamos Days
. Contiene siete constantes que son los días de la semana. Utilizamos el método switch y case para mostrar un mensaje diferente para cada día.
Obtenemos el valor del enum usando el nombre de la constante como Days.MONDAY
obtendrá la constante MONDAY
, y se almacenará en el objeto enum day
. Podemos usarlo para cambiar entre casos. La función switch()
toma el valor a cambiar, que es day
. Por último, especificamos cada caso y la salida que debe producir.
Tenemos que romper cada caso en el switch para que rompa la ejecución una vez que haya terminado.
public class SwitchEnum {
enum Days { SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY }
public static void main(String[] args) {
Days day = Days.MONDAY;
switch (day) {
case SUNDAY:
System.out.println("Sundays are wonderful");
break;
case MONDAY:
System.out.println("Mondays are boring");
break;
case TUESDAY:
System.out.println("Tuesdays are OK");
break;
case WEDNESDAY:
System.out.println("Wednesdays are tiring");
break;
case THURSDAY:
System.out.println("Thursdays are even more boring");
break;
case FRIDAY:
System.out.println("Fridays means work work and work");
break;
case SATURDAY:
System.out.println("Saturdays makes everybody happy");
break;
}
}
}
Producción :
Mondays are boring
Conmutar en Enum Usando el Switch Mejorado y Case en Java 12
En Java 12, el switch y case mejorados fueron introducidos para superar las desventajas del switch y case tradicionales. La mayor desventaja de las sentencias switch tradicionales es que tenemos que especificar la palabra clave break en cada caso.
Ahora, con el switch y el case mejorados, podemos utilizar el enum con códigos más cortos. Usamos flechas en lugar de dos puntos en el nuevo switch y case. Como sólo queremos imprimir una sentencia, no tenemos que utilizar ninguna llave.
public class SwitchEnum {
enum Days { SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY }
public static void main(String[] args) {
Days day = Days.SATURDAY;
switch (day) {
case SUNDAY -> System.out.println("Sundays are wonderful");
case MONDAY -> System.out.println("Mondays are boring");
case TUESDAY -> System.out.println("Tuesdays are OK");
case WEDNESDAY -> System.out.println("Wednesdays are tiring");
case THURSDAY -> System.out.println("Thursdays are even more boring");
case FRIDAY -> System.out.println("Fridays means work work and work");
case SATURDAY -> System.out.println("Saturdays makes everybody happy");
}
}
}
Producción :
Saturdays makes everybody happy
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn