Выбор по значению перечисления в Dart
Конструкция switch умеет ветвиться
по значению перечисления. В case
пишут конкретное значение через имя типа
и точку.
Если перечислены все значения типа, ветку
default можно не добавлять: компилятор
считает выбор полным.
Полный выбор по Status без default:
enum Status { open, closed, wait }
var gate = Status.closed;
switch (gate) {
case Status.open:
print("open");
break;
case Status.closed:
print("closed");
break;
case Status.wait:
print("wait");
break;
}
Даны тип и переменная:
enum Size { small, medium, large }
var box = Size.small;
По значению box выведите "tiny"
для Size.small, "mid" для
Size.medium и "big" для
Size.large.
Даны тип и переменная:
enum Mood { calm, busy, tired }
var day = Mood.busy;
По значению day выведите "quiet"
для Mood.calm, "active" для
Mood.busy и "sleepy" для
Mood.tired.
Даны тип и переменная:
enum Port { http, https, ftp }
var link = Port.https;
По значению link выведите "plain"
для Port.http, "secure" для
Port.https и "file" для
Port.ftp.