В языке Kotlin для создания ограниченного набора возможных вариантов необходимо создать класс, который объявляется с ключевым словом enum.
Enum от слова enumeration, что означает перечисление.
Например нам необходимо, чтобы член класса мог сохранять статус какой-либо задачи. Если задача завершена без ошибок необходимо установить статус OK, если задачу пользователь отменил установить статус CANCEL, если задача завершилась с ошибкой указать статус ERROR и если задача ещё не была начата статус UNDEFINED. Для этого объявляем enum класс:
enum class Status {
OK,
CANCEL,
ERROR,
UNDEFINED
}
Затем в классе объявляем переменную с типом данных нашего класса перечисления и так как переменные должны быть инициализированы (им должны быть присвоены значения), сразу же указываем значение переменной равной Status.UNDEFINED:
var status: Status = Status.UNDEFINED
В коде соответствие статуса можно, например проверять в блоках if, when и т.д.:
when(status)
{
Status.OK -> print("Status is OK")
Status.ERROR -> print("Status is Error")
Status.CANCEL -> print("Task is canceled")
else -> print("Task isn't started yet")
}
Реклама