在這個程序中,您將學習使用enum的valueOf()方法在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); } }
運行該程序時,輸出為:
BOLD
在上面的程序中,我們有一個枚舉TextStyle,它表示文本塊可以具有的不同樣式,即粗體,斜體,下劃線和刪除線。
我們還有一個名為style的字符串,其中包含我們想要的當前樣式。但是,并非全都使用。
然后,我們使用枚舉TextStyle的valueOf()方法來傳遞樣式并獲取所需的枚舉值。
由于valueOf()采用區(qū)分大小寫的字符串值,因此我們必須使用toUpperCase()方法將給定的字符串轉換為大寫。
相反,如果我們使用:
TextStyle.valueOf(style)
該程序將引發(fā)異常 No enum constant EnumString.TextStyle.Bold。