Uso de Enumeraciones en Java: Definición y Ejemplos Prácticos

Clase 18 de 38Curso de Java SE Orientado a Objetos

Los enumerations son tipos de datos muy especiales pues este, es el único en su tipo que sirve para declarar una colección de constantes, al ser así estaremos obligados a escribirlos con mayúsculas.

Usaremos enum cada vez que necesitemos representar un conjunto fijo de constantes. Por ejemplo los días de la semana.

Así podemos declarar un enumeration usando la palabra reservada enum.

public enum Day { SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY }

Puedo crear referencias de enumerations de la siguiente forma:

Day day; switch (day) { case MONDAY: System.out.println(“Mondays are good.); break; case FRIDAY: System.out.println(“Fridays are nice”); break; case SATURDAY: case: SUNDAY: System.out.println(“Weekends are the best”); break; default: System.out.println(“Midweek are so-so”); break; }

Y puedo llamar un valor del enumeration así:

Day.MONDAY; Day.FRIDAY; Day.SATURDAY

Los enumerations pueden tener atributos, métodos y constructores, como se muestra:

public enum Day { MONDAY("Lunes"), TUESDAY("Jueves"), FRIDAY("Viernes"), SATURDAY("Sábado"), SUNDAY("Domingo"), private String spanish; private Day(String s) { spanish = s; } public String getSpanish() { return spanish; } }

Y para utilizarlo lo podemos hacer así:

System.out.println(Day.MONDAY);

Imprimirá: MONDAY

System.out.println(Day.MONDAY.getSpanish());

Imprimirá: Lunes