В этой программе вы научитесь преобразовывать строковое значение в перечисление в Java, используя метод enum valueOf ().
Чтобы понять этот пример, вы должны знать следующие темы программирования Java:
- Строка Java
- Перечисления Java
Пример: поиск перечисления по строковому значению
public class EnumString ( public enum TextStyle ( BOLD, ITALICS, UNDERLINE, STRIKETHROUGH ) public static void main(String() args) ( String style = "Bold"; TextStyle textStyle = TextStyle.valueOf(style.toUpperCase()); System.out.println(textStyle); ) )
Вывод
СМЕЛЫЙ
В приведенной выше программе у нас есть перечисление TextStyle, которое представляет различные стили, которые может иметь блок текста, то есть полужирный, курсив, подчеркивание, зачеркивание.
У нас также есть строка с именем style, которая содержит текущий стиль, который мы хотим. Однако это не заглавные буквы.
Затем мы используем метод перечисления TextStyle valueOf()
для передачи стиля и получения требуемого значения перечисления.
Поскольку valueOf()
принимает строковое значение с учетом регистра, нам пришлось использовать этот toUpperCase()
метод для преобразования данной строки в верхний регистр.
Если бы вместо этого мы использовали:
TextStyle.valueOf (стиль)
программа выдала бы исключение No enum constant EnumString.TextStyle.Bold
.