Класс Enum
Любое перечисление, объявленное через
enum,
наследует System.Enum. Значение можно
привести к int
или другому базовому типу и обратно к типу
перечисления. Имена и списки значений читают
через GetName,
Parse
и родственные методы.
Синтаксис
enum Mark { None = 0, Read = 1, Write = 2 }
int num = (int)Mark.Read;
Mark back = (Mark)num;
Пример
Давайте приведём элемент перечисления к
int и выведем число:
using System;
enum Mark { None = 0, Read = 1, Write = 2 }
class Program
{
static void Main()
{
int num = (int)Mark.Read;
Console.WriteLine(num);
}
}
Результат выполнения кода:
1
Пример
Давайте восстановим перечисление из числа:
using System;
enum Mark { None = 0, Read = 1, Write = 2 }
class Program
{
static void Main()
{
Mark res = (Mark)2;
Console.WriteLine(res);
}
}
Результат выполнения кода:
"Write"
Пример
Давайте пройдем циклом по всем значениям
через GetValues:
using System;
enum Mark { None = 0, Read = 1, Write = 2 }
class Program
{
static void Main()
{
foreach (Mark item in Enum.GetValues<Mark>())
{
Console.WriteLine(item);
}
}
}
Результат выполнения кода:
"None"
"Read"
"Write"