Справочник по C#

    Исходники по языку программирования CSharp

    Тип ENUM: Справочник по C#

    /
    /
    /
    247 Views


          Тип enum предназначен для объявления перечислений. Каждое перечисление это отдельный тип, состоящий из набора именованных констант, который называется списком перечислителя.
          Обычно лучше всего определять перечисление прямо в пространстве имен, чтобы всем классам в пространстве имен было одинаково удобно получить к нему доступ.

          Перечисления могут сыграть очень важную роль и облегчить жизнь программисту. Объявляются перечисления вот так:
    public enum DaysOfWeek
    {
    Monday = 0,
    Tuesday = 1,
    Wednesday = 2,
    Thursday = 3,
    Friday = 4,
    Saturday = 5,
    Sunday = 6
    }
    

          Здесь мы используем целые значения, которые соответствуют дням недели (стоит отметить что день можно определить из названия переменной) Доступ к конкретному дню недели можно получить вот так: DaysOfWeek.Wednesday вернет 2. Обычно перечисления используют в тех случаях, когда нужно передавать соответствующее значение методу, который будет проходить по всем значениям с помощью switch и выдавать соответствующий результат. Давайте разберем это на очень простом примере, который даст понять логику работы с перечислениями:

    using System;
    using System.Collections.Generic;
    using System.Text;
    
    namespace EnumerationExample
    {
    class Program
    {
    public enum DaysOfWeek
    {
    Monday = 0,
    Tuesday = 1,
    Wednesday = 2,
    Thursday = 3,
    Friday = 4,
    Saturday = 5,
    Sunday = 6
    }
    
    static void Main(string[] args)
    {
    WriteText(DaysOfWeek.Sunday);
    Console.ReadLine();
    }
    
    static void WriteText(DaysOfWeek days)
    {
    switch (days)
    {
    case DaysOfWeek.Monday:
    Console.WriteLine("Понедельник");
    break;
    case DaysOfWeek.Tuesday:
    Console.WriteLine("Вторник");
    break;
    case DaysOfWeek.Wednesday:
    Console.WriteLine("Среда");
    break;
    case DaysOfWeek.Thursday:
    Console.WriteLine("Четверг");
    break;
    case DaysOfWeek.Friday:
    Console.WriteLine("Пятница");
    break;
    case DaysOfWeek.Saturday:
    Console.WriteLine("Суббота");
    break;
    case DaysOfWeek.Sunday:
    Console.WriteLine("Понедельник");
    break;
    }
    }
    }
    }
    

          Теперь запустите программу, и вы увидите что в консоли появится текст “Понедельник”. Мы увидели именно эту фразу, потому что передали в метод WriteText элемент перечисления Sunday, попробуйте передать туда другие дни недели, и вы убедитесь что программа будет выводить именно тот текст что принадлежит соответствующему дню недели. Метод WriteText принимает перечисление, и в зависимости от передаваемого параметра, выводит текст.
          По умолчанию первому перечислителю задано значение, равное нулю, а значение каждого последующего оператора увеличивается на 1. Например:

    public enum E1 {One, Two, Three}
    

    Такое перечисление эквивалентно следующим строкам кода:

    const int One = 0;
    const int Two = 1;
    const int Three = 2;
    

    Таким образом, перечисление — это всего лишь компактное объявление сразу нескольких целочисленных констант.

    Тип ENUM: Справочник по C#

    0.00 (0%) 0 votes

    moyadcode13
    • Facebook
    • Twitter
    • Google+
    • Linkedin
    • Pinterest