English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
В этой программе вы узнаете, как использовать метод valueOf() для преобразования строки в энум в Java.
public class EnumString { public enum TextStyle { BOLD, ИТАЛИК, ПОДЧЕРКНУТО, ПЕРЕРЫВ } public static void main(String[] args) { String style = "Bold"; TextStyle textStyle = TextStyle.valueOf(style.toUpperCase()); System.out.println(textStyle); } }
При запуске программы, вывод:
ЖИРНЫЙ
В программе выше у нас есть枚举 TextStyle, который中表示 текстовый блок может иметь различные стили, то есть жирный, курсив, подчеркивание и зачеркнутый.
У нас также есть строка style, которая содержит текущий стиль, который мы хотим. Но не все из них используются.
Затем мы используем метод valueOf()枚举 TextStyle для передачи стиля и получения необходимого значения枚举.
Поскольку valueOf() принимает чувствительные к регистру строковые значения, мы должны использовать метод toUpperCase() для преобразования заданного строки в верхний регистр.
Напротив, если мы используем:
TextStyle.valueOf(style)
Эта программа вызовет исключение No enum constant EnumString.TextStyle.Bold.