C# Enum

2075 / C# / Enum

 

Перелічуваний тип даних (enumerated type)

Тип даних що складається з множини іменованих значень (елементів, констант)

Дозволяє використовувати зрозумілі назви замість цифр

 

enum Days 
{
  Monday,
  Tuesday,
  Wednesday,
  Thursday,
  Friday,
  Saturday,
  Sunday
}

 
enum Operation
{
  Add,
  Subtract,
  Multiply,
  Divide
}

static void Main(string[] args)
{
  Operation op;
  op = Operation.Add;
  Console.WriteLine(op); // Add
  Console.WriteLine((int)op); // 0
}

 
Нумерація що починається не з нуля

// int - типове значення параметра, може бути: byte, int, short, long
enum Gender : byte
{
  MALE = 1, // 1
  FEMALE // 2
}

 
або дублюється

enum Color
{
  Red = 4, // 4
  Green = 4, // 4
  Blue = 8, // 8
  White = Blue // White = 8
}

 
Вивести усі значення

foreach (var item in Enum.GetNames(typeof(Color)))
{
  Console.WriteLine(item);
}