Énumération C#

Enumeration C



C # est le langage de programmation utilisé pour développer des programmes, des sites Web, des applications Android, des jeux et bien d'autres. C# prend en charge différentes bibliothèques et frameworks dotés de fonctions intégrées. Enum est une énumération, c'est une classe. Une classe contient différents types de données et fonctions, une structure de données, qui contient différentes variables. L'énumération est particulièrement utile lorsque nous connaissons toutes les variables au moment de la compilation dont un utilisateur définit les types de données. Enum contient différentes valeurs et ces valeurs ne peuvent pas être modifiées. Les valeurs peuvent être récupérées et utilisées dans le code, mais nous ne pouvons pas modifier les valeurs au moment de l'exécution, elles sont uniquement lisibles et non modifiables. L'énumération traite toutes les données qu'elle contient comme une chaîne, si nous voulons utiliser une valeur entière, nous devons taper cast. L'énumération est utile car elle prend moins de mémoire et d'espace.

Syntaxe







énumération E_Name { Valeur_1, Valeur_2, Valeur_3,….. } ;


Ou



énumération E_Name { Valeur_1 = 3. 4 , Valeur_2 = 90 , Valeur_3 = 8 ,….. } ;


L'attribut 'énumération' est le mot clé pour définir l'énumération. Chaque fois que nous avons besoin de types de données définis par l'utilisateur, ' enum' mot clé est utilisé pour créer le type de données défini par l'utilisateur. La ' E_nom' est le nom de la classe enum. À l'intérieur de cette classe, les accolades contiendront tous les paramètres et valeurs qu'elle contient. Nous pouvons seulement écrire les arguments et le compilateur leur assignera des valeurs. Par défaut, à partir de la première valeur stocke dans l'index 0 et la suivante sur 1 et ainsi de suite.



Il n'y a aucune restriction sur le type de données des arguments, nous pouvons attribuer des valeurs entières, des valeurs à virgule flottante, des caractères, des booléens ou des chaînes. Mais si nous n'attribuons pas les types de données aux valeurs, il leur attribuera automatiquement la valeur constante où elles sont stockées.





Les types

Dans le langage C#, il existe deux types d'énumération. Ceux-ci sont listés ci-dessous :

    • Énumération simple
    • Énumération des drapeaux

Énumération simple

Dans cette catégorie, les membres de la classe 'enum' contiennent une seule valeur.



Énumération des drapeaux

Dans cette catégorie, le membre de la classe flag enum contient plusieurs valeurs ou plusieurs valeurs utilisant l'opérateur au niveau du bit ou utilisant OR (|).

Exemple 1:

Dans cet exemple, nous apprendrons comment nous pouvons utiliser la simple classe 'enum' et récupérer les valeurs sans les affecter à des variables.


Pour coder en langage de programmation C #, nous devons d'abord créer le nouveau projet, puis commencer à coder. Lorsque nous voulons créer une application console, nous devons sélectionner l'application console, le framework C#, qui écrira automatiquement la classe et la fonction main(). Pour utiliser le simple terme « enum » ci-dessus dans le code, nous allons définir et initialiser la classe interne « Program ». Comme l'énumération est le mot-clé et le mot suivant après l'énumération est 'fruit_names'. À l'intérieur des accolades, nous définissons la liste que nous voulons. Ici, la classe enum contient quatre noms de fruits. Nous appelons toutes les fonctions à l'intérieur de la méthode main(). À l'intérieur du static main(), nous afficherons l'une après l'autre toutes les valeurs enum. Dans ce code, nous écrivons simplement les arguments enum, pas les valeurs. Ainsi, il leur attribuera automatiquement les index où ils sont stockés comme valeur.

La fonction Console.writeline() est utilisée pour écrire sur l'écran de sortie et après avoir présenté le message, elle déplace le curseur à la ligne suivante. Dans cette instruction, écrivez un message et concaténez-le avec un signe '+' pour afficher ce message défini avec la valeur. Après la concaténation, tapez « enum name » et utilisez (.) pour adresser un type spécifique de « enum » : fruit_names.Apple. Ensuite, dans l'instruction suivante, utilisez à nouveau le signe (+) pour concaténer le type avec le message et l'index où il est stocké. Pour obtenir l'index, nous devons d'abord le convertir en entier en faisant un transtypage. Dans le type C #, la conversion se fait en utilisant simplement la parenthèse. Entre parenthèses, écrivez le type de données dans lequel nous voulons transtyper. En dehors des parenthèses, écrivez le nom de la variable, c'est-à-dire (int)var_name. De cette façon, nous pouvons obtenir le message avec une valeur enum et un index où il est stocké.

Répétez ceci trois fois; changez simplement le message et le type d'énumération. L'énumération rend le code beau et propre. La fonction Console.ReadKey() gardera la console active jusqu'à ce que nous la fermions. Si nous n'utilisons pas cette instruction, la console clignote une fois puis elle disparaîtra.

Exemple 2 :

Dans ce programme, nous allons implémenter la simple classe « enum » en attribuant différentes valeurs aux attributs de la classe.


Dans le deuxième exemple, nous avons à nouveau créé un projet pour l'application console et défini une énumération dans la classe interne 'Program' avec le mot-clé 'enum'. Cette fois, il contient la classe 'items' avec des valeurs différentes. Dans la fonction main(), nous accéderons à tous les éléments de la classe enum ‘items’. Utilisons la méthode console.writeLine(). Il affichera tout ce qu'il contient. Tout d'abord, affichez un message, puis appelez à nouveau la fonction Console.WriteLine() pour afficher le premier élément avec la quantité. Définissez un texte que nous voulons afficher sur le terminal et concaténez-le avec items.chairs. Il obtiendra le premier élément (chaises) de la classe enum 'items'. Pour obtenir la quantité de cet élément, nous devons effectuer un casting car les données de la classe enum se présentent sous la forme d'une chaîne. Donc, pour accéder à leurs valeurs, nous tapons d'abord cast. Pour obtenir la valeur de 'chairs', faites un casting comme (int)items.chairs. Sinon, nous n'obtiendrons que l'élément 'chaises' et non sa valeur. Ici, si nous avons remarqué, les symboles ‘\n’ et ‘\t’ sont utilisés. En utilisant ‘\t’, nous donnons un espace de tabulation et en utilisant ‘\n’ nous déplacerons le curseur à la ligne suivante. Répétez cette procédure deux fois. Nous devons simplement mettre à jour les valeurs enum. À la fin, écrivez simplement la console.ReadKey() pour garder la console active afin que nous puissions voir la sortie.

Exemple 3 :

Nous allons utiliser l'énumération 'drapeau' dans ce scénario.


Dans une énumération simple, nous ne pouvons attribuer qu'une seule valeur au membre de la classe enum. Mais avec l'énumération des drapeaux, nous pouvons attribuer plusieurs valeurs à un membre de la classe enum. Ce type d'énumération est utile lorsque nous avons affaire à différents choix et lorsque nous avons plus d'une valeur. Pour utiliser l'énumération des drapeaux, avant de définir une classe enum, nous devons écrire [flags] puis écrire la classe enum 'flag_example'. Maintenant, à l'intérieur de cette classe, nous pouvons facilement attribuer plusieurs valeurs à un membre. Dans cet exemple, nous avons attribué deux valeurs à l'attribut 'driver' et séparé les deux valeurs à l'aide de l'opérateur (|). Ensuite, dans la fonction main() déclarez une variable ‘var flags’. Pour afficher plusieurs éléments sur la console, utilisez l'opérateur ou (|), puis appelez les éléments enum avec le nom de la classe et le nom de l'élément. Pour afficher un message, appelez la méthode Console.WriteLine(). Pour représenter la valeur du drapeau, écrivez ‘flag’ dans un autre Console.Write(). Dans l'instruction suivante, la fonction Console.ReadKey() est appelée pour garder la console ouverte jusqu'à ce que nous la fermions.

Conclusion

Dans ce guide, nous avons appris l'énumération, ce qu'elle est et comment nous pouvons l'utiliser en langage C#. L'énumération rend le code simple et lisible. Parce que les valeurs de la classe enum ne peuvent pas être modifiées. Cela nous offre des avantages lorsque nous traitons ce type de données qui ne nécessite pas de changement de valeurs. Nous avons discuté de la syntaxe et des types d'énumération à l'aide de différents codes. L'énumération prend moins de mémoire et est facile à utiliser.