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

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

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

enum Days    // int - типове значення параметра, може бути: byte, int, short, long

{

   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

        }

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

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);

}