У цій програмі ви навчитесь перетворювати значення рядка на перерахування в Kotlin за допомогою методу enum's valueOf ().
Приклад: Пошук переліку за рядковим значенням
enum class TextStyle ( BOLD, ITALICS, UNDERLINE, STRIKETHROUGH ) fun main(args: Array) ( val style = "Bold" val textStyle = TextStyle.valueOf(style.toUpperCase()) println(textStyle) )
Коли ви запускаєте програму, результат буде:
СМІЛИЙ
У наведеній вище програмі ми маємо перелік TextStyle, який представляє різні стилі, які може мати блок тексту, тобто жирний шрифт, курсив, підкреслення, закреслення.
У нас також є рядок із іменем style, який містить поточний стиль, який ми хочемо. Однак це не у всіх великих ковпачках.
Потім ми використовуємо метод valueOf () перерахування TextStyle, щоб передати стиль і отримати потрібне нам значення переліку.
Оскільки valueOf () приймає значення рядка, що сприймає регістр, нам довелося скористатися методом toUpperCase () для перетворення заданого рядка у верхній регістр.
Якби замість цього ми використовували:
TextStyle.valueOf (стиль)
програма викинула б виняток No enum constant EnumString.TextStyle.Bold
.
Ось еквівалентний код Java: програма Java для пошуку переліку за рядковим значенням.