РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
91 of 723 menu

Тип Enum

Тип Enum в Dart представляет собой специальный тип, который используется для создания перечислений - наборов именованных констант. Перечисления объявляются с помощью ключевого слова enum и позволяют задать фиксированный список значений, каждое из которых имеет имя и индекс. Каждое значение перечисления является экземпляром класса Enum и обладает свойствами index (порядковый номер, начиная с нуля) и name (имя константы). Перечисления удобно использовать там, где нужно ограничить набор возможных значений, например, для дней недели, направлений или статусов.

Синтаксис

enum EnumName { value1, value2, value3 }

Пример

Давайте объявим перечисление с тремя значениями и выведем каждое из них:

enum Color { red, green, blue } void main() { print(Color.red); print(Color.green); print(Color.blue); }

Результат выполнения кода:

"Color.red" "Color.green" "Color.blue"

Пример

Давайте получим свойства index и name для каждого значения перечисления:

enum Color { red, green, blue } void main() { print(Color.red.index); print(Color.red.name); print(Color.green.index); print(Color.green.name); print(Color.blue.index); print(Color.blue.name); }

Результат выполнения кода:

0 "red" 1 "green" 2 "blue"

Пример

Давайте получим список всех значений перечисления с помощью статического свойства values:

enum Color { red, green, blue } void main() { List<Color> res = Color.values; print(res); }

Результат выполнения кода:

[Color.red, Color.green, Color.blue]

Пример

Давайте получим значение перечисления по его имени с помощью статического метода values.byName:

enum Color { red, green, blue } void main() { Color res = Color.values.byName('green'); print(res); }

Результат выполнения кода:

"Color.green"

Пример

Давайте используем перечисление в switch для обработки всех возможных значений:

enum Color { red, green, blue } void main() { Color color = Color.green; switch (color) { case Color.red: print('red'); break; case Color.green: print('green'); break; case Color.blue: print('blue'); break; } }

Результат выполнения кода:

"green"

Смотрите также

  • тип Type,
    который представляет тип объекта во время выполнения
  • тип Symbol,
    который представляет идентификатор
  • тип Comparable,
    который используется для сравнения объектов
  • тип bool,
    который представляет логические значения
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить