Enum în C# este cunoscută și ca enumerare. Este folosit pentru a stoca un set de constante numite, cum ar fi sezonul, zilele, luna, dimensiunea etc. Constantele enumerate sunt cunoscute și ca enumeratori. Enum în C# poate fi declarată în interiorul sau în afara clasei și structurilor.
Constantele enumerare au valori implicite care pornesc de la 0 și cresc la una câte una. Dar putem schimba valoarea implicită.
Puncte de reținut
- enumerarea are un set fix de constante
- enum îmbunătățește siguranța tipului
- enumerarea poate fi parcursă
Exemplu de enumerare C#
Să vedem un exemplu simplu de enumerare C#.
using System; public class EnumExample { public enum Season { WINTER, SPRING, SUMMER, FALL } public static void Main() { int x = (int)Season.WINTER; int y = (int)Season.SUMMER; Console.WriteLine('WINTER = {0}', x); Console.WriteLine('SUMMER = {0}', y); } }
Ieșire:
convertiți data în șir
WINTER = 0 SUMMER = 2
Exemplu de enumerare C# de modificare a indexului de pornire
using System; public class EnumExample { public enum Season { WINTER=10, SPRING, SUMMER, FALL } public static void Main() { int x = (int)Season.WINTER; int y = (int)Season.SUMMER; Console.WriteLine('WINTER = {0}', x); Console.WriteLine('SUMMER = {0}', y); } }
Ieșire:
WINTER = 10 SUMMER = 12
Exemplu de enumerare C# pentru Days
using System; public class EnumExample { public enum Days { Sun, Mon, Tue, Wed, Thu, Fri, Sat }; public static void Main() { int x = (int)Days.Sun; int y = (int)Days.Mon; int z = (int)Days.Sat; Console.WriteLine('Sun = {0}', x); Console.WriteLine('Mon = {0}', y); Console.WriteLine('Sat = {0}', z); } }
Ieșire:
Sun = 0 Mon = 1 Sat = 6
Exemplu de enumerare C#: parcurgerea tuturor valorilor folosind getNames()
using System; public class EnumExample { public enum Days { Sun, Mon, Tue, Wed, Thu, Fri, Sat }; public static void Main() { foreach (string s in Enum.GetNames(typeof(Days))) { Console.WriteLine(s); } } }
Ieșire:
Sun Mon Tue Wed Thu Fri Sat
Exemplu de enumerare C#: parcurgerea tuturor valorilor folosind getValues()
using System; public class EnumExample { public enum Days { Sun, Mon, Tue, Wed, Thu, Fri, Sat }; public static void Main() { foreach (Days d in Enum.GetValues(typeof(Days))) { Console.WriteLine(d); } } }
Ieșire:
Sun Mon Tue Wed Thu Fri Sat