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