0Pricing
C# Academy · Leçon

Définir et utiliser des énumérations

Créez des énumérations avec des valeurs explicites et implicites.

Définir et utiliser des énumérations est une leçon C# Academy gratuite sur CoddyKit. Ceci est la leçon 1 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 C# Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours C# Academy comprend 4 leçons au total.

Qu’est-ce qu’une énumération ?

Une enum est un ensemble nommé de constantes associées. Elle rend le code plus lisible en remplaçant les nombres magiques par des noms explicites.

using System;

enum Direction { North, East, South, West }
class Program {
    static void Main() {
        Direction d = Direction.East;
        Console.WriteLine(d);
    }
}

Déclarer une énumération

Vous déclarez une énumération avec le mot-clé enum et vous en répertoriez les membres. Par défaut, le premier vaut 0, le suivant 1, et ainsi de suite.

using System;

enum Day { Mon, Tue, Wed }
class Program {
    static void Main() {
        Console.WriteLine((int)Day.Mon);
        Console.WriteLine((int)Day.Wed);
    }
}

Valeurs sous-jacentes personnalisées

Vous pouvez attribuer des nombres explicites. Les membres auxquels aucune valeur n’est attribuée continuent à partir de la valeur précédente.

using System;

enum Status { Active = 1, Paused = 5, Stopped }
class Program {
    static void Main() {
        Console.WriteLine((int)Status.Stopped);
    }
}

Choisir un type sous-jacent

Les énumérations utilisent int par défaut, mais vous pouvez choisir un autre type entier, comme byte, pour économiser de l’espace.

using System;

enum Level : byte { Low = 1, High = 200 }
class Program {
    static void Main() {
        Console.WriteLine((byte)Level.High);
    }
}

Énumérations dans les variables

Utilisez un type d’énumération comme n’importe quel autre type pour les variables, les paramètres et les champs.

using System;

enum Color { Red, Green, Blue }
class Program {
    static void Describe(Color c) {
        Console.WriteLine("Color is " + c);
    }
    static void Main() {
        Describe(Color.Green);
    }
}

Énumérations dans switch

Les énumérations s’associent parfaitement à switch pour créer des branchements clairs et exhaustifs.

using System;

enum Signal { Stop, Go, Caution }
class Program {
    static void Main() {
        Signal s = Signal.Go;
        switch (s) {
            case Signal.Stop: Console.WriteLine("Halt"); break;
            case Signal.Go: Console.WriteLine("Move"); break;
            default: Console.WriteLine("Slow"); break;
        }
    }
}

Comparer les valeurs d’une énumération

Les valeurs d’une énumération se comparent avec == et les opérateurs d’ordre, en fonction de leurs nombres sous-jacents.

using System;

enum Priority { Low, Medium, High }
class Program {
    static void Main() {
        Console.WriteLine(Priority.High > Priority.Low);
    }
}

Valeur par défaut d’une énumération

Une énumération non initialisée est égale au membre dont la valeur est 0. Il est recommandé de faire de 0 une valeur par défaut pertinente, comme None.

using System;

enum Mode { None, Fast, Slow }
class Program {
    static void Main() {
        Mode m = default;
        Console.WriteLine(m);
    }
}

Afficher les noms des énumérations

L’appel de ToString ou l’affichage d’une énumération montre le nom du membre, ce qui est bien plus clair qu’un nombre brut.

using System;

enum Fruit { Apple, Banana, Cherry }
class Program {
    static void Main() {
        Console.WriteLine(Fruit.Banana.ToString());
    }
}

Les énumérations améliorent la lisibilité

Par rapport au passage d’entiers isolés, les énumérations documentent l’intention et empêchent les valeurs invalides.

using System;

enum Size { Small, Medium, Large }
class Program {
    static int PriceFor(Size s) {
        return s == Size.Large ? 12 : 8;
    }
    static void Main() {
        Console.WriteLine(PriceFor(Size.Large));
    }
}

Où déclarer les énumérations

Les énumérations peuvent se trouver au niveau de l’espace de noms ou à l’intérieur d’une classe. Gardez-les près du code qui les utilise.

using System;

class Program {
    enum Phase { Start, Run, End }
    static void Main() {
        Console.WriteLine(Phase.Run);
    }
}

Vérification rapide

Testez votre compréhension des énumérations.

Récapitulatif

Une enum définit un ensemble de constantes nommées, ce qui améliore la lisibilité par rapport aux nombres magiques. Les membres prennent par défaut les valeurs 0, 1, 2…, mais vous pouvez attribuer des valeurs explicites et même modifier le type entier sous-jacent.

Les énumérations fonctionnent très bien dans les variables, les instructions switch et les comparaisons, affichent les noms de leurs membres et utilisent par défaut le membre dont la valeur est 0.

Questions Fréquemment Posées

La leçon « Définir et utiliser des énumérations » est-elle gratuite ?

Oui — le texte complet de « Définir et utiliser des énumérations » 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 C# Academy, passe à CoddyKit PRO. Le cours C# Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Définir et utiliser des énumérations » ?

Créez des énumérations avec des valeurs explicites et implicites. Tu pratiques C# 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 C# Academy ?

Aucune expérience préalable n'est requise. C# 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 1 sur 4.

Combien de temps prend la leçon « Définir et utiliser des énumérations » ?

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 C# Academy ?

Oui. Chaque leçon C# 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éfinir et utiliser des énumérations
  2. Énumérations d’indicateurs et combinaisons bit à bit
  3. Conversions et analyse d’énumérations
  4. Parcourir les valeurs d’une énumération
← Retour à C# Academy