V tomto programu se naučíte převádět hodnotu řetězce na enum v Javě pomocí metody valueOf () enum.
Abychom porozuměli tomuto příkladu, měli byste znát následující programovací témata Java:
- Řetězec Java
- Výčet Java
Příklad: Vyhledat výčet podle hodnoty řetězce
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); ) )
Výstup
TUČNĚ
Ve výše uvedeném programu máme výčet TextStyle, který představuje různé styly, které blok textu může mít, tj. Tučné písmo, kurzíva, podtržení, přeškrtnutí.
Máme také řetězec s názvem styl, který obsahuje aktuální styl, který chceme. Není však v all-caps.
Potom použijeme metodu výčtu TextStyle valueOf()
k předání stylu a získání hodnoty výčtu, kterou požadujeme.
Vzhledem valueOf()
k tomu, že hodnota řetězce rozlišuje velká a malá písmena, museli jsme použít toUpperCase()
metodu k převodu daného řetězce na velká písmena.
Pokud bychom místo toho použili:
TextStyle.valueOf (styl)
program by vyvolal výjimku No enum constant EnumString.TextStyle.Bold
.