En Dart, los enums (enumeraciones) permiten definir un conjunto de valores constantes con nombre, lo que facilita representar opciones limitadas en el código. Son útiles para mejorar la legibilidad, facilitar el mantenimiento y reducir errores al trabajar con categorías o estados predefinidos.
Un enum (abreviatura de enumeración) en Dart es un tipo de dato que permite definir un grupo de constantes relacionadas. Cada valor de un enum es una constante que se comporta como una instancia de la enumeración, lo cual ayuda a representar estados o categorías que no cambian, como los días de la semana, las estaciones del año o el estado de una aplicación.
Para declarar un enum en Dart, utiliza la palabra clave enum
seguida de su nombre y de los valores constantes, separados por comas. Aquí hay un ejemplo básico:
enum DiaSemana { lunes, martes, miercoles, jueves, viernes, sabado, domingo }
void main() {
// Asignación de un valor enum a una variable
DiaSemana hoy = DiaSemana.lunes;
// Uso en una estructura de control
switch (hoy) {
case DiaSemana.lunes:
print("Inicio de semana");
break;
case DiaSemana.sabado:
case DiaSemana.domingo:
print("Fin de semana");
break;
default:
print("Es un día laboral");
}
}
Dart permite acceder a todas las opciones de un enum usando la propiedad values
. También puedes obtener el índice de cada elemento en el enum:
void main() {
// Listar todos los valores del enum
for (var dia in DiaSemana.values) {
print(dia); // Output: DiaSemana.lunes, DiaSemana.martes, etc.
}
// Obtener el índice de un valor
print(DiaSemana.lunes.index); // Output: 0
print(DiaSemana.viernes.index); // Output: 4
}
1. Estados de aplicación: Definir estados como loading
, success
, error
.
2. Roles de usuario: Enumerar roles como admin
, user
, guest
.
3. Opciones de configuración: Categorías predefinidas, como themeLight
, themeDark
.
Para más información, consulta la documentación oficial de Dart.
Jorge García
Fullstack developer