Menu
Coddy logo textTech

Utiliser des Enums dans des variables

Fait partie de la section Logique & Flux du Journey Dart de Coddy — leçon 60 sur 65.

Maintenant que vous savez comment définir des énumérations, apprenons comment les utiliser concrètement dans vos programmes. Une fois que vous avez créé une énumération, vous pouvez déclarer des variables de ce type d'énumération et leur assigner des valeurs spécifiques.

Pour déclarer une variable de type enum, vous spécifiez le nom de l'enum suivi du nom de la variable, tout comme avec n'importe quel autre type de données :

Weather todayWeather = Weather.sunny;

Remarquez comment vous accédez aux valeurs d'une énumération en utilisant la notation par point : Weather.sunny. Cela indique à Dart que vous voulez la valeur sunny de l'énumération Weather.

Vous pouvez changer la valeur de la variable pour n'importe quelle autre valeur d'énumération valide :

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

L'avantage d'utiliser des variables enum est que Dart garantit que vous ne pouvez assigner que des valeurs d'enum valides. Vous ne pouvez pas assigner accidentellement "stormy" ou toute autre valeur invalide à une variable Weather, ce qui évite les erreurs de programmation courantes et rend votre code plus fiable.

challenge icon

Défi

Facile

Créez un programme qui gère un système simple de suivi de tâches en utilisant des enums et des variables. Votre tâche consiste à :

  1. Définir un enum appelé TaskStatus avec les valeurs suivantes : todo, inProgress, testing, completed, et cancelled
  2. Créer une variable appelée task1Status de type TaskStatus et lui assigner la valeur TaskStatus.todo
  3. Créer une variable appelée task2Status de type TaskStatus et lui assigner la valeur TaskStatus.inProgress
  4. Créer une variable appelée task3Status de type TaskStatus et lui assigner la valeur TaskStatus.completed
  5. Afficher le statut initial de toutes les tâches avec le format exact : Task 1 status: TaskStatus.todo
  6. Afficher le statut initial de la tâche 2 avec le format exact : Task 2 status: TaskStatus.inProgress
  7. Afficher le statut initial de la tâche 3 avec le format exact : Task 3 status: TaskStatus.completed
  8. Mettre à jour task1Status vers TaskStatus.inProgress
  9. Mettre à jour task2Status vers TaskStatus.testing
  10. Afficher le statut mis à jour de la tâche 1 avec le format exact : Updated Task 1 status: TaskStatus.inProgress
  11. Afficher le statut mis à jour de la tâche 2 avec le format exact : Updated Task 2 status: TaskStatus.testing
  12. Afficher le statut final de la tâche 3 avec le format exact : Final Task 3 status: TaskStatus.completed

Votre programme doit démontrer une définition correcte d'enum en utilisant le mot-clé enum, la déclaration de variables avec des types enum, l'accès aux valeurs d'enum en utilisant la notation par point, et la mise à jour des variables d'enum. Assurez-vous de respecter les conventions de nommage Dart où le nom de l'enum commence par une majuscule et les valeurs de l'enum sont écrites en minuscules.

Aide-mémoire

Pour déclarer une variable de type enum, spécifiez le nom de l'énumération suivi du nom de la variable :

Weather todayWeather = Weather.sunny;

Accédez aux valeurs de l'énumération en utilisant la notation par point avec le format EnumName.value :

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

Dart garantit que vous ne pouvez assigner que des valeurs d'énumération valides aux variables d'énumération, empêchant ainsi les assignations invalides et rendant le code plus fiable.

Essayez vous-même

import 'dart:io';

// TODO: Définissez votre enum TaskStatus ici

void main() {
  // TODO: Écrivez votre code ici
  // 1. Créez la variable task1Status et assignez TaskStatus.todo
  // 2. Créez la variable task2Status et assignez TaskStatus.inProgress  
  // 3. Créez la variable task3Status et assignez TaskStatus.completed
  // 4. Affichez le statut initial de toutes les tâches
  // 5. Mettez à jour les statuts des tâches comme requis
  // 6. Affichez les statuts mis à jour et finaux
  
}
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Logique & Flux