Вебинар • 28 января 16:00–18:30
Как получать клиентов с онлайн-карт без вложений в рекламу?

Как правильно использовать enum в C#

Обсудить
Как правильно использовать enum в C#

В C# есть много интересных возможностей, помогающих разработчикам писать код на языке, который похож на человеческий. Одна из таких полезных штук – списки перечислений.

Давайте посмотрим, что такое enum в C# и как им пользоваться.

Что такое enum в C#

Enum – пользовательский тип данных, который представляет собой набор именованных целочисленных констант. По сути, это список однотипных значений: дней недели, кодов ответа сервера, арифметических действий.

В C# есть встроенный список цветов. Это отличный пример enum. Пользователю не нужно каждый раз вводить код цвета. Он просто выбирает значение из подготовленного заранее списка.

using System;

class HelloWorld {

  static void Main() {

    //По умолчанию вывод в консоли белого цвета

    Console.WriteLine("Hello, World!");

    //Изменили цвет на зеленый, выбрав его из списка

    Console.ForegroundColor = ConsoleColor.Green; 

    //Теперь вывод в консоли зеленого цвета

    Console.WriteLine("Hello, World!");

  }

}

Как создать enum в C#

Теперь давайте разберемся, как создать enum в C#. Общая структура списка выглядит так:

enum Название_типа : целочисленный_тип

{

    имена_констант_через_запятую

}
  • Сначала – ключевое слово enum. Оно указывает, что это перечисление.
  • Затем мы задаем название типа. Им может быть любая строка, которую допустимо использовать в именах переменных.
  • После двоеточия указывается тип данных констант, которые будут входить в состав перечисления. По умолчанию это int.
  • В фигурных скобках перечисляются сами константы.

В качестве примера создадим перечисление простейших математических операций:

enum Math

{

    Add,

    Subtract,

    Multiply,

    Divide

}

У нас есть понятный список операций, который можно использовать для создания методов и при необходимости расширять.

Как использовать enum

Возьмем наше перечисление математических операций и посмотрим, как правильно использовать enum. 

В качестве примера создадим метод DoMath, используя конструкцию switch.

static double DoMath(double a, double b, Math operation)

{

    return operation switch

    {

        Math.Add => a + b,

        Math.Divide => a / b,

        Math.Multiply => a * b,

        Math.Subtract => a - b,

        _ => throw new Exception("Неизвестное действие")

    };

}

В методе используется перечисление Math, которое позволяет пользователю выбрать нужное арифметическое действие. Например, нужно выполнить умножение:

static void Main(string[] args)

{

   double d =  DoMath(11, 4, Math.Multiply);

   Console.WriteLine(d);

}

В консоли будет выведено число 44.

Как enum улучшает читаемость кода

Главный плюс enum – код становится более читаемым. Не нужно каждый раз проверять реализацию класса, чтобы понять, за что отвечает аргумент и что он вообще делает. Enum дает возможность понятно описывать разные значения.

С enum также проще масштабировать код. Например, у нас есть список с простыми арифметическими действиями. Мы можем легко его расширить, добавив новую константу. А затем использовать ее в методе DoMath или в другом месте программы.

Заключение

Использование enum – хорошая практика. Перечисления в C# помогают разработчикам писать более читаемый и легко масштабируемый код. Их также часто используют для ограничения количества вариантов. 

Комментарии

С помощью соцсетей
У меня нет аккаунта Зарегистрироваться
Нажимая кнопку «Зарегистрироваться», я даю согласие на обработку своих персональных данных, указанных в форме регистрации.
С помощью соцсетей
У меня уже есть аккаунт Войти
Нажимая кнопку «Зарегистрироваться», я даю согласие на обработку своих персональных данных, указанных в форме регистрации.
Инструкции по восстановлению пароля высланы на Ваш адрес электронной почты.
Пожалуйста, укажите email вашего аккаунта
Ваш баланс 10 ТК
1 ТК = 1 ₽
О том, как заработать и потратить Таймкарму, читайте в этой статье
Чтобы потратить Таймкарму, зарегистрируйтесь на нашем сайте