0Pricing
Dart Academy · Leçon

Énumérations enrichies avec champs et méthodes

Associer des données et un comportement à chaque valeur

Énumérations enrichies avec champs et méthodes est une leçon Dart Academy gratuite sur CoddyKit. Ceci est la leçon 3 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Dart Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Dart Academy comprend 4 leçons au total.

Les énumérations peuvent contenir des données

Les versions modernes de Dart permettent à chaque membre d’une énumération de contenir ses propres données. Ce sont des énumérations enrichies, qui transforment de simples étiquettes en valeurs riches.

Ajouter un champ

Déclarez un champ immuable dans l’énumération, puis transmettez une valeur pour chaque membre. Chaque membre contient alors ces données supplémentaires.

enum Planet {
  earth(9.8), mars(3.7);
  final double gravity;
}

Un constructeur constant est obligatoire

Les énumérations enrichies ont besoin d’un constructeur constant pour définir leurs champs. Il s’exécute une fois pour chaque membre lors de la création des valeurs.

const Planet(this.gravity);

Les membres transmettent des arguments au constructeur

Les valeurs entre parenthèses sont des arguments du constructeur. terre(9.8) signifie que terre est construite avec une gravité définie à 9.8.

earth(9.8), mars(3.7);

Lire le champ d’un membre

Accédez aux données par l’intermédiaire du membre, comme pour toute propriété. Chaque membre renvoie sa propre valeur enregistrée.

print(Planet.earth.gravity); // 9.8

Plusieurs champs

Une énumération enrichie peut contenir plusieurs champs à la fois. Répertoriez-les dans le constructeur et fournissez chaque valeur pour chaque membre.

enum Coin { penny(1, "1c"), dime(10, "10c"); }

Ajouter une méthode

Les énumérations enrichies peuvent aussi définir des méthodes. La méthode peut utiliser les champs du membre, ce qui donne à chaque valeur un véritable comportement.

double weightOf(double mass) => mass * gravity;

Appeler une méthode d’énumération

Appelez la méthode sur n’importe quel membre comme sur un objet ordinaire. Elle s’exécute avec les valeurs de champ propres à ce membre.

print(Planet.mars.weightOf(70)); // 259.0

Ajouter un accesseur

Un accesseur calculé fonctionne également : il renvoie une valeur dérivée des champs sans rien stocker de nouveau.

bool get isStrong => gravity > 5;

Ce sont toujours des énumérations

Malgré leur puissance supplémentaire, les énumérations enrichies conservent values, l’indice et le nom. Vous ne perdez rien en ajoutant des champs et des méthodes.

print(Planet.values.length); // 2

Quand enrichir une énumération

Utilisez une énumération enrichie lorsque chaque choix possède des données associées, comme une couleur avec un code hexadécimal. Les données et le choix restent ainsi réunis.

Vérification rapide

Que doit toujours inclure une énumération enrichie avec des champs ?

Récapitulatif : énumérations enrichies

Vous avez appris que les énumérations enrichies contiennent des champs et des méthodes grâce à un constructeur constant, afin que chaque membre porte ses propres données et son propre comportement. 🚀

Questions Fréquemment Posées

La leçon « Énumérations enrichies avec champs et méthodes » est-elle gratuite ?

Oui — le texte complet de « Énumérations enrichies avec champs et méthodes » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Dart Academy, passe à CoddyKit PRO. Le cours Dart Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Énumérations enrichies avec champs et méthodes » ?

Associer des données et un comportement à chaque valeur Tu pratiques Dart Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Dart Academy ?

Aucune expérience préalable n'est requise. Dart Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 3 sur 4.

Combien de temps prend la leçon « Énumérations enrichies avec champs et méthodes » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Dart Academy ?

Oui. Chaque leçon Dart Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Déclarer et utiliser des énumérations simples
  2. Valeurs d’énumération, index et name
  3. Énumérations enrichies avec champs et méthodes
  4. Utiliser switch exhaustivement sur les énumérations
← Retour à Dart Academy