Jak používat výčty Java k vytváření konstant ve vašem kódu
Pomocí enumů v Javě můžete vytvářet proměnné s pevnými hodnotami. Tyto proměnné se zapisují velkými písmeny a nelze je měnit. Slouží ke zlepšení logiky a čitelnosti kódu a mohou vám pomoci vytvořit čistý kód.
Co jsou to Java enumy?
V jazyce Java se enumy vztahují ke speciálnímu datovému typu, který lze použít v konvenčních třídách, ale liší se od konvenčních tříd v jednom klíčovém aspektu. Enum je typ proměnné, která má specificky definované, pevné a tudíž omezené možnosti hodnot. Java enumy jsou konstanty, které zabraňují použití nežádoucích hodnot v kódu. Tím je zajištěna logická struktura kódu a zvýšená čitelnost. Termín „enum“ pochází ze slova „enumeration“ (výčet).
Jaká je syntaxe pro výčty v Javě?
Syntaxe pro výčty v Javě má vždy stejnou strukturu a vypadá takto:
enum NameOfTheClass {
VALUE1,
VALUE2,
VALUE3
}javaPokud tedy chcete definovat třídu enum, začněte klíčovým slovem enum, které použijete místo class nebo interface. Poté pojmenujte speciální třídu a vložte požadované povolené konstanty do složených závorek. Konstanty se vždy píší velkými písmeny a oddělují se od sebe čárkami.
Jak vytvořit třídu s výčtem
Jedním ze způsobů, jak můžete použít výčty Java, je vytvoření seznamu obsahujícího měsíce v roce. Takový seznam by obsahoval pouze dvanáct možných hodnot. Pokud je v pozdější fázi potřeba proměnná typu Months, jsou povoleny pouze definované konstanty. Zde je příklad, jak napsat kód:
enum Months {
JANUARY,
FEBRUARY,
MARCH,
APRIL,
MAY,
JUNE,
JULY,
AUGUST,
SEPTEMBER,
OCTOBER,
NOVEMBER,
DECEMBER
}javaChcete-li deklarovat proměnnou typu Months, přiřaďte jí hodnotu a použijte příkaz Java System.out.println k jejímu zobrazení. V kódu to vypadá takto:
public class Main {
public static void main(String[] args) {
Months month = Months.APRIL;
System.out.println(month);
}
}javaJak používat výčty Java v rámci třídy
Java enums můžete také použít v rámci třídy. V případě výše uvedeného příkladu by to vypadalo takto:
public class Main {
enum Months {
JANUARY,
FEBRUARY,
MARCH,
APRIL,
MAY,
JUNE,
JULY,
AUGUST,
SEPTEMBER,
OCTOBER,
NOVEMBER,
DECEMBER
}
public static void main(String[] args) {
Months month = Months.APRIL;
System.out.println(month);
}
}javaJak použít metodu values() k dotazování všech konstant
Pokud chcete zobrazit všechny dostupné hodnoty, můžete použít metodu values(). Ta vypisuje konstanty ve formě pole. Takto to provedete v našem příkladu výše:
enum Months {
JANUARY,
FEBRUARY,
MARCH,
APRIL,
MAY,
JUNE,
JULY,
AUGUST,
SEPTEMBER,
OCTOBER,
NOVEMBER,
DECEMBER
}
public class Main {
public static void main(String[] args) {
for (Months month : Months.values()) {
System.out.println(month);
}
}
}javaJak používat výčty Java s switch()
Java enumy můžete také kombinovat s jinými metodami. Takto to vypadá v kombinaci s switch():
enum Months {
JANUARY,
FEBRUARY,
MARCH,
APRIL,
MAY,
JUNE,
JULY,
AUGUST,
SEPTEMBER,
OCTOBER,
NOVEMBER,
DECEMBER
}
public class Main {
public static void main(String[] args) {
Months month = Months.APRIL;
switch (month) {
case APRIL:
System.out.println("The outdoor pool is closed.");
break;
case MAY:
System.out.println("The outdoor pool is closed.");
break;
case JUNE:
System.out.println("The outdoor pool eagerly awaits your visit!");
break;
// You can now try this out for all months.
}
}
}java