Menu
Coddy logo textTech

Uso de Enums en variables

Parte de la sección Lógica y Flujo del Journey de Dart de Coddy. Lección 60 de 65.

Ahora que sabes cómo definir enumeraciones, aprendamos a usarlas realmente en tus programas. Una vez que hayas creado una enumeración, puedes declarar variables de ese tipo de enumeración y asignarles valores específicos.

Para declarar una variable de un tipo enumerado, especifica el nombre del enum seguido del nombre de la variable, igual que con cualquier otro tipo de datos:

Weather todayWeather = Weather.sunny;

Observa cómo accedes a los valores del enum mediante la notación de punto: Weather.sunny. Esto indica a Dart que quieres el valor sunny del enum Weather.

Puedes cambiar el valor de la variable a cualquier otro valor válido del enumerador:

todayWeather = Weather.rainy;
todayWeather = Weather.cloudy;

La ventaja de usar variables enum es que Dart garantiza que solo puedas asignar valores enum válidos. No puedes asignar accidentalmente "stormy" ni ningún otro valor no válido a una variable Weather, lo que evita errores de programación comunes y hace que tu código sea más fiable.

challenge icon

Desafío

Fácil

Crea un programa que gestione un sistema sencillo de seguimiento de tareas mediante enumeraciones y variables. Tu tarea consiste en:

  1. Definir una enumeración llamada TaskStatus con los siguientes valores: todo, inProgress, testing, completed y cancelled
  2. Crear una variable llamada task1Status de tipo TaskStatus y asignarle el valor TaskStatus.todo
  3. Crear una variable llamada task2Status de tipo TaskStatus y asignarle el valor TaskStatus.inProgress
  4. Crear una variable llamada task3Status de tipo TaskStatus y asignarle el valor TaskStatus.completed
  5. Imprimir el estado inicial de todas las tareas con el formato exacto: Task 1 status: TaskStatus.todo
  6. Imprimir el estado inicial de la tarea 2 con el formato exacto: Task 2 status: TaskStatus.inProgress
  7. Imprimir el estado inicial de la tarea 3 con el formato exacto: Task 3 status: TaskStatus.completed
  8. Actualizar task1Status a TaskStatus.inProgress
  9. Actualizar task2Status a TaskStatus.testing
  10. Imprimir el estado actualizado de la tarea 1 con el formato exacto: Updated Task 1 status: TaskStatus.inProgress
  11. Imprimir el estado actualizado de la tarea 2 con el formato exacto: Updated Task 2 status: TaskStatus.testing
  12. Imprimir el estado final de la tarea 3 con el formato exacto: Final Task 3 status: TaskStatus.completed

Tu programa debe demostrar la definición correcta de una enumeración mediante la palabra clave enum, la declaración de variables con tipos de enumeración, el acceso a los valores de la enumeración mediante la notación de punto y la actualización de variables de enumeración. Asegúrate de seguir las convenciones de nomenclatura de Dart, según las cuales el nombre de la enumeración comienza con una letra mayúscula y los valores de la enumeración se escriben en minúsculas.

Pruébalo tú mismo

import 'dart:io';

// TODO: Define tu enum TaskStatus aquí

void main() {
  // TODO: Escribe tu código aquí
  // 1. Crea la variable task1Status y asigna TaskStatus.todo
  // 2. Crea la variable task2Status y asigna TaskStatus.inProgress  
  // 3. Crea la variable task3Status y asigna TaskStatus.completed
  // 4. Imprime el estado inicial de todas las tareas
  // 5. Actualiza los estados de las tareas según sea necesario
  // 6. Imprime los estados actualizados y finales
  
}
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Lógica y Flujo

Practica por tu cuenta: Compilador de Dart online