Kako uporabiti Java enums za ustvarjanje konstant v svojem kodu
Z Java enums lahko ustvarite spremenljivke s fiksnimi vrednostmi. Te so zapisane z velikimi črkami in jih ni mogoče spremeniti. Uporabljajo se za izboljšanje logike in berljivosti vašega kode in vam lahko pomagajo ustvariti čisto kodo.
Kaj so Java enumi?
V Javi se izraz »enums« nanaša na posebno vrsto podatkov, ki se lahko uporablja v konvencionalnih razredih, vendar se od njih razlikuje v enem ključnem vidiku. Enum je vrsta spremenljivke, ki ima posebej opredeljene, fiksne in zato omejene možnosti vrednosti. Java enums so konstante, ki preprečujejo uporabo neželenih vrednosti v kodi. To zagotavlja logično strukturo kode in povečuje berljivost. Izraz »enum« izhaja iz besede »enumeration« (številčenje).
Kakšna je sintaksa za Java enums?
Sintaksa za Java enums je vedno enako strukturirana in izgleda takole:
enum NameOfTheClass {
VALUE1,
VALUE2,
VALUE3
}javaČe torej želite definirati razred enum, začnite s ključno besedo enum, ki jo uporabite namesto class ali interface. Nato poimenujte posebni razred in v oklepajih navedite želene dovoljene konstante. Konstante so vedno zapisane z velikimi črkami in ločene med seboj z vejicami.
Kako ustvariti razred z enumom
Eden od načinov uporabe Java enumov je ustvarjanje seznama, ki vsebuje mesece v letu. Takšen seznam bi vseboval le dvanajst možnih vrednosti. Če je kasneje potrebna spremenljivka tipa Months, so dovoljene le definirane konstante. Tako napišete kodo:
enum Months {
JANUARY,
FEBRUARY,
MARCH,
APRIL,
MAY,
JUNE,
JULY,
AUGUST,
SEPTEMBER,
OCTOBER,
NOVEMBER,
DECEMBER
}javaDa bi deklarirali spremenljivko tipa Months, ji dodelite vrednost in jo prikažite z uporabo Java ukaza System.out.println. V kodi to izgleda takole:
public class Main {
public static void main(String[] args) {
Months month = Months.APRIL;
System.out.println(month);
}
}javaKako uporabljati Java enums znotraj razreda
Java enums lahko uporabljate tudi znotraj razreda. V zgornjem primeru bi to izgledalo takole:
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);
}
}javaKako uporabiti metodo values() za poizvedovanje vseh konstant
Če želite prikazati vse razpoložljive vrednosti, lahko uporabite metodo values(). Ta izpiše konstante v obliki matrike. Tako to storite v zgornjem primeru:
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);
}
}
}javaKako uporabljati Java enums z switch()
Java enume lahko kombinirate tudi z drugimi metodami. Tako izgleda, ko je kombiniran z 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