Enums en Java: cómo crear constantes en el código

Los enums en Java permiten crear variables con valores fijos. Se escriben en mayúsculas y no pueden modificarse posteriormente. Se utilizan para mejorar la lógica y la legibilidad del código y, por tanto, contribuyen a un código limpio.

¿Qué caracteriza a los enums en Java?

Los Java enums son un tipo de datos que se puede utilizar dentro de una clase convencional, pero difiere de ella en un aspecto en particular: un enum es un tipo de variable que tiene opciones de valor definidas específicamente, fijas y, por tanto, restringidas. Los enums de Java son, por tanto, constantes que impiden que se utilicen valores no deseados dentro de un código. Esto garantiza la estructura lógica de un código y aumenta la legibilidad. El término “enum” procede de la palabra inglesa “enumeration”, que significa “enumeración” o “directorio”.

Hosting
El hosting como nunca lo habías visto
  • Rápido, seguro, flexible y escalable
  • Certificado SSL/DDoS incluido
  • Dominio y asesor personal incluidos

La sintaxis de los enums en Java

La sintaxis de los enums se estructura siempre de forma idéntica y tiene el siguiente aspecto:

enum nombre_de_la_clase { 
VALOR1, 
VALOR2, 
VALOR3
}
java

Por lo tanto, si quieres definir esta clase, comienza con la palabra clave “enum”, que se utiliza en lugar de “clase” o “interfaz”. A continuación, asigna un nombre a la clase especial y coloca entre llaves las constantes autorizadas que desees. Las constantes se escriben siempre en mayúsculas y separadas entre sí por comas.

Ejemplo de clase especial

Un posible ejemplo de enums es una lista de meses. Ésta solo contiene doce valores posibles que se pueden crear como constantes. Si más adelante se necesita una variable del tipo “meses”, solo se permiten las constantes definidas. El código de este ejemplo sería el siguiente:

enum Meses { 
ENERO, 
FEBRERO, 
MARZO, 
ABRIL, 
MAYO, 
JUNIO, 
JULIO, 
AGOSTO, 
SEPTIEMBRE, 
OCTUBRE, 
NOVIEMBRE, 
DICIEMBRE
}
java

Para declarar una variable del tipo “Meses”, asigna un valor y utiliza el comando Java System.out.println para mostrarla. El código se vería así:

public class Main { 
public static void main(String[] args) { 
Meses mes = Meses.ABRIL; 
System.out.println(mes); 
} 
}
java

Enums de Java dentro de una clase

También puedes utilizar los enums dentro de una clase. Con nuestro ejemplo anterior, se vería así:

public class Main { 
enum Meses { 
ENERO, 
FEBRERO, 
MARZO, 
ABRIL, 
MAYO, 
JUNIO, 
JULIO, 
AGOSTO, 
SEPTIEMBRE, 
OCTUBRE, 
NOVIEMBRE, 
DICIEMBRE
} 
public static void main(String[] args) { 
Meses mes = Meses.ABRIL; 
System.out.println(mes); 
} 
}
java

El método values para consultar todas las constantes

Si quieres mostrar todos los valores disponibles, el método values() te ayudará. Este sería el código apropiado para nuestro ejemplo:

enum Meses { 
ENERO, 
FEBRERO, 
MARZO, 
ABRIL, 
MAYO, 
JUNIO, 
JULIO, 
AGOSTO, 
SEPTIEMBRE, 
OCTUBRE, 
NOVIEMBRE, 
DICIEMBRE 
} 
public class Main { 
public static void main(String[] args) { 
for (Meses mes : Meses.values()) { 
System.out.println(mes); 
} 
} 
}
java

Enums con switch

También peudes combinar los enums con otros métodos. Un ejemplo de combinación con switch() sería el siguiente:

enum Meses { 
ENERO, 
FEBRERO, 
MARZO, 
ABRIL, 
MAYO, 
JUNIO, 
JULIO, 
AGOSTO, 
SEPTIEMBRE, 
OCTUBRE, 
NOVIEMBRE, 
DICIEMBRE
} 
public class Main { 
public static void main(String[] args) { 
Meses mes = Meses.ABRIL; 
switch (mes) { 
case ABRIL: 
System.out.println("La piscina está cerrada."); 
break; 
case MAI: 
System.out.println("La piscina está cerrada."); 
break; 
case JUNI: 
System.out.println("La piscina te da la bienvenida"); 
break; 
// Ahora puedes probarlo con todos los meses. 
} 
} 
}
java
¿Le ha resultado útil este artículo?
Page top