switch enum en Java

  1. Conmutar Enum usando el conmutador tradicional y Case en Java
  2. Conmutar en Enum Usando el Switch Mejorado y Case en Java 12
switch enum en Java

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
¿Disfrutas de nuestros tutoriales? Suscríbete a DelftStack en YouTube para apoyarnos en la creación de más guías en vídeo de alta calidad. Suscríbete
Rupam Yadav avatar Rupam Yadav avatar

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

Artículo relacionado - Java Switch

Artículo relacionado - Java Enum