Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗dtOpEsPrm 82 of 113 menu
◀ ▶

Практика enum и sealed в Dart

Объявите enum Weekday с семью днями недели. Напишите функцию isWeekend(Weekday day): для saturday и sunday верните true, для остальных дней - false. Выведите результат для Weekday.saturday.

Объявите enum OrderStatus с константами NEW, PAID, SHIPPED и DONE. Дана переменная:

var status = OrderStatus.PAID;

С помощью switch для переменной status выведите соответствующую текстовую метку: NEW - "created", PAID - "paid", SHIPPED - "on way", DONE - "finished".

Объявите enum Traffic с полем limit: city - 60, road - 90, highway - 110. Выведите все пары "name:limit" в порядке объявления, каждую с новой строки.

Объявите sealed class ApiResult: Success с полем payload, Failure с полем error. Напишите функцию summary(ApiResult r): для Success верните строку "ok " и payload, для Failure - строку "err " и error. Выведите результат для Failure(503).

Объявите sealed class Screen: Loading как final class без полей, Content с полем title, Error с полем message. Дано:

Screen screen = Content("Home");

С помощью switch для переменной screen выведите заголовок экрана или текст ошибки, для Loading выведите "wait".

Объявите enum Channel с константами email, sms и push. Объявите sealed class Notification: Sent с полями channel и id, Skipped как final class без полей. Создайте Sent(Channel.push, 7) и выведите имя канала и id в одной строке, между ними один пробел.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить