Функция enumValueOf
Функция enumValueOf
позволяет получить элемент перечисления (enum) по его имени. В первый параметр передается строковое имя элемента enum, а функция возвращает соответствующий элемент. Если элемент с указанным именем не существует, выбрасывается исключение IllegalArgumentException
.
Синтаксис
inline fun <reified T : Enum<T>> enumValueOf(name: String): T
Пример
Получим элемент enum по имени "RED"
:
enum class Color { RED, GREEN, BLUE }
val color: Color = enumValueOf<Color>("RED")
println(color)
Результат выполнения кода:
Color RED
Пример
Попытка получить несуществующий элемент enum:
enum class Color { RED, GREEN, BLUE }
try {
val color: Color = enumValueOf<Color>("YELLOW")
} catch (e: IllegalArgumentException) {
println("Color not found")
}
Результат выполнения кода:
Color not found
Пример
Использование enumValueOf с разными типами enum:
enum class Direction { NORTH, SOUTH, EAST, WEST }
val direction: Direction = enumValueOf<Direction>("EAST")
println(direction)
Результат выполнения кода:
Direction EAST
Смотрите также
-
метод
values
,
который возвращает массив всех элементов enum -
метод
name
,
который возвращает имя элемента enum -
метод
ordinal
,
который возвращает порядковый номер элемента enum -
функцию
enumValues
,
которая возвращает массив всех элементов enum