En Dart, puedes crear un enum
(enumeración) para definir un conjunto de valores constantes relacionados. Un enum
es útil cuando quieres representar un grupo fijo de opciones.
Aquí te muestro cómo hacerlo:
Definición de un Enum
Para definir un enum
, usa la palabra clave enum
seguida del nombre del enum
y una lista de sus valores entre llaves:
enum DiaDeLaSemana { lunes, martes, miercoles, jueves, viernes, sabado, domingo }
Uso de un Enum
Una vez que has definido un enum
, puedes usarlo en tu código de diferentes maneras. Aquí hay algunos ejemplos:
Asignar un Valor de Enum a una Variable
DiaDeLaSemana hoy = DiaDeLaSemana.lunes;
Comparar Valores de Enum
if (hoy == DiaDeLaSemana.lunes) { print('Hoy es lunes'); }
Iterar Sobre los Valores de un Enum
Puedes obtener todos los valores de un enum
usando la propiedad values
y luego iterar sobre ellos.
for (var dia in DiaDeLaSemana.values) { print(dia); }
Convertir un Enum a una Cadena de Texto
El método toString
puede ser utilizado para convertir un valor de enum
en una cadena de texto.
print(DiaDeLaSemana.lunes.toString()); // Output: DiaDeLaSemana.lunes
Si quieres obtener solo el nombre del enum sin el prefijo DiaDeLaSemana.
, puedes hacer algo así:
print(DiaDeLaSemana.lunes.toString().split('.').last); // Output: lunes
Ejemplo Completo
Aquí tienes un ejemplo completo que incluye la definición de un enum
, asignación de valores, comparación, iteración y conversión a cadena:
void main() { // Definir el enum enum DiaDeLaSemana { lunes, martes, miercoles, jueves, viernes, sabado, domingo } // Asignar un valor de enum a una variable DiaDeLaSemana hoy = DiaDeLaSemana.martes; // Comparar valores de enum if (hoy == DiaDeLaSemana.martes) { print('Hoy es martes'); } // Iterar sobre los valores del enum print('Días de la semana:'); for (var dia in DiaDeLaSemana.values) { print(dia); } // Convertir un enum a una cadena de texto print('Hoy es: ${hoy.toString().split('.').last}'); // Output: Hoy es: martes }
Ingeniero en Informática, me encanta crear cosas o arreglarlas y darles una nueva vida. Escritor y poeta. Más de 20 APPs publicadas y un libro en Amazon.