Hvordan bruke Java-enumerasjoner til å opprette konstanter i koden din
Med Java-enumerasjoner kan du opprette variabler med faste verdier. Disse skrives med store bokstaver og kan ikke endres. De brukes til å forbedre logikken og lesbarheten i koden din og kan hjelpe deg med å lage ren kode.
Hva er Java-enumerasjoner?
I Java refererer enums til en spesiell datatype som kan brukes i konvensjonelle klasser, men som skiller seg fra konvensjonelle klasser på ett viktig punkt. En enum er en type variabel som har spesifikt definerte, faste og derfor begrensede verdivalg. Java-enums er konstanter som forhindrer at uønskede verdier brukes i koden. Dette sikrer at kodestrukturen er logisk og øker lesbarheten. Begrepet «enum» kommer fra ordet «enumeration» (oppregning).
Hva er syntaksen for Java-enumerasjoner?
Syntaksen for Java-enumerasjoner er alltid strukturert på samme måte og ser slik ut:
enum NameOfTheClass {
VALUE1,
VALUE2,
VALUE3
}javaSå hvis du vil definere en enum-klasse, begynn med nøkkelordet enum, som du bruker i stedet for class eller interface. Gi deretter den spesielle klassen et navn og plasser de ønskede tillatte konstantene i krøllparentesene. Konstantene skrives alltid med store bokstaver og skilles fra hverandre med komma.
Hvordan opprette en klasse med enum
En måte du kan bruke Java-enumerasjoner på, er å lage en liste som inneholder månedene i året. En slik liste vil bare inneholde tolv mulige verdier. Hvis det senere blir behov for en variabel av typen Months, er det bare de definerte konstantene som er tillatt. Slik skriver du koden:
enum Months {
JANUARY,
FEBRUARY,
MARCH,
APRIL,
MAY,
JUNE,
JULY,
AUGUST,
SEPTEMBER,
OCTOBER,
NOVEMBER,
DECEMBER
}javaFor å deklarere en variabel av typen Months, tilordne den en verdi og bruk Java-kommandoen System.out.println for å vise den. Dette ser slik ut i koden:
public class Main {
public static void main(String[] args) {
Months month = Months.APRIL;
System.out.println(month);
}
}javaHvordan bruke Java-enumerasjoner i en klasse
Du kan også bruke Java-enumerasjoner innenfor en klasse. For eksemplet ovenfor vil det se slik ut:
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);
}
}javaHvordan bruke values() -metoden til å spørre om alle konstanter
Hvis du vil vise alle tilgjengelige verdier, kan du bruke metoden values(). Dette viser konstanter i form av en matrise. Slik gjør du det med eksemplet ovenfor:
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);
}
}
}javaHvordan bruke Java-enumerasjoner med switch()
Du kan også kombinere Java-enumerasjoner med andre metoder. Slik ser det ut når det kombineres med 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