Les énumérations en C#



Les énumérations en C#

    1. Présentation
      • Les énumérations en C# permettent de définir un ensemble de constantes qui sont liées entre elles.
      • Les énumérations en C#

      • Le enum mot-clé est utilisé pour déclarer un énumération, un type distinct qui se compose d’un ensemble de constantes nommées appelées liste des énumérations.
      • Habituellement, il est préférable de définir un énoncé directement dans un espace de noms afin que toutes les classes de l’espace de noms puissent y accéder avec la même commodité. Cependant, une énumération peut également être imbriquée dans une classe ou une structure.
      • Les énumérations sont des constantes fortement typées. Ce sont essentiellement des types uniques qui vous permettent d’attribuer des noms symboliques aux valeurs intégrales.
      • Dans la tradition C #, ils sont fortement typés, ce qui signifie qu’un énoncé d’un type peut ne pas être implicitement attribué à un énoncé d’un autre type même si la valeur sous-jacente de leurs membres est la même.
      • Dans le même ordre d’idées, les types et énumères intégrales ne sont pas implicitement interchangables. Toutes les affectations entre différents types d’énumération et les types intégrés nécessitent une distribution explicite.
      • La bibliothèque de classes .NET Framework contient de nombreuses énoncés et des exemples de leur utilisation.
      • Par exemple, chaque fois que vous mettez une icône sur un MessageBox , vous utilisez l’ énumération MessageBoxIcon . Pour obtenir une liste des énoncés disponibles dans la bibliothèque de classes .NET Framework, consultez la documentation de la classe Enum et cliquez sur le lien Derived Classes.
    2. Déclaration
      • la déclaration se fait de la manière suivante :
        • public enum JourSemaine
          {
          Lundi,
          Mardi,
          Mercredi,
          Jeudi,
          Vendredi,
          Samedi,
          Dimanche
          }
          public enum DoigtMain
          {
          Pouce,
          Index,
          Majeur,
          Annulaire,
          Auriculaire
          }

        Chacune de ces valeurs représente une constante. Elles obéissent aux mêmes règles de nommage que les variables : pas de chiffre au début, pas d’espace, pas de tiret ainsi qu’un certain nombre d’autres signes.

      • Par défaut, la première valeur de l’énumération est initialisée à zéro. Les constantes suivantes sont ensuite initialisées avec un incrément de un. La déclaration précédente aurait donc pu s’écrire:
        • public enum JourSemaine : int
          {
          Lundi = 0,
          Mardi = 1,
          Mercredi = 2,
          Jeudi = 3,
          Vendredi = 4,
          Samedi = 5,
          Dimanche = 6
          }
      • La valeur d’un membre enum ne peut pas être modifiée. Il se comporte comme une constante. Dans le programme ci-dessus, nous ne pouvons pas modifier la valeur d’énum membre dimanche à partir de Main (). Il se comporte comme une constante.
    3. Assignation
      • Pour assigner un enum, la syntaxe sera la suivante: monEnum = TypeEnum.Valeur;
        • static void Main(string[] args)
          {
          DoigtMain monDoigt;
          monDoigt = DoigtMain.Index;
          }
    4. Utilisation de GetName
      • Utiliser la méthode GetNames pour passer la liste des énumérateurs à l’aide de la boucle FOR-EACH .
      • GetName accepte en second paramètre soit une variable du type sous-jacent de l’énumération, soit directement une constante nommée de celle-ci ; toute autre valeur entraînera la levée d’une exception. En outre, si la valeur passée en paramètre n’est pas incluse dans l’énumération comme le sont les valeurs fantômes, la chaîne de caractères résultant de l’opération aura la valeur null.
      • const int valeurjour = 4;
        string troisiemejour = Enum.GetName(typeof(JourSemaine ), valeurjour ); // "Jeudi"
        const quatriemejour Vendredi = JourSemaine .Vendredi;
        string valeurjour = Enum.GetName(typeof(JourSemaine ), Vendredi ); // "Vendredi"

    5. Avantages de l’utilisation d’Enums
      • Les énoncés sont fortement typés signifie que l’énumération d’un type ne peut pas être assignée à un autre type.
      • Les énumérations sont appelées constantes, de sorte que le code devient plus simple, efficace, plus facile à gérer et lisible. Vous devez donc simplement vous rappeler les noms réels et non les valeurs entières Enums consomme moins d’espace mémoire car les énums sont du type de valeur et sont attribués sur la pile.
      • Les énumérations sont représentées sous forme de chaînes, mais traitées en nombre entier.
      • Le type d’énumération par défaut est int, et d’autres types approuvés sont sbyte, byte, ushort, short, long, uint et ulong.
      • L’énumération des drapeaux nous permet d’attribuer les valeurs multiples à un membre enum ou à un objet enum.
    6. Convertir une chaîne de caractères en valeur d’énumération
      • Pour convertir la valeur de la chaîne d’entrée en un membre enum en utilisant la méthode Enum.Parse.
      • La méthode Enum.Parse convertit les chaînes en un objet énuméré équivalent.
      • La méthode Enum.Parse prend une chaîne et obtient l’énumération réelle du type d’énumération.

Sommaire du cours c#



Abonnez vous à notre chaîne YouTube gratuitement