Enum в C# е известен също като изброяване. Използва се за съхраняване на набор от именувани константи като сезон, дни, месец, размер и т.н. Константите enum са известни също като изброители. Enum в C# може да се декларира в или извън клас и структури.
Изтегляне на видео от youtube vlc
Enum константите имат стойности по подразбиране, които започват от 0 и се увеличават до една по една. Но можем да променим стойността по подразбиране.
Точки за запомняне
- enum има фиксиран набор от константи
- enum подобрява безопасността на типа
- enum може да бъде обходен
Пример за C# Enum
Нека видим прост пример за C# enum.
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); } }
Изход:
WINTER = 0 SUMMER = 2
C# enum пример за промяна на началния индекс
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); } }
Изход:
отпечатайте звезден модел
WINTER = 10 SUMMER = 12
C# enum пример за 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); } }
Изход:
Sun = 0 Mon = 1 Sat = 6
C# enum пример: преминаване на всички стойности с помощта на 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); } } }
Изход:
Sun Mon Tue Wed Thu Fri Sat
C# enum пример: преминаване на всички стойности с помощта на 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); } } }
Изход:
Sun Mon Tue Wed Thu Fri Sat