Java

Vodič za Java Enum

Vodič za Java Enum
Java enum je posebna vrsta Java koju definira Java klasa. Također se naziva tipom nabrajanja Java. Prvo je predstavljen u Javinoj verziji 5, koja se uglavnom koristi za definiranje kolekcije konstanti. Sigurnost kompajliranja osigurava se upotrebom tipa enum. Dakle, kada su sve moguće vrijednosti varijable poznate prije vremena kompajliranja, onda je bolje koristiti tip enum. Definira klasu koja se uvijek proteže od jave.lang.Enum. Kako se enum tip može deklarirati i koristiti u Javi prikazan je u ovom vodiču.

Sintaksa:

javni popis enum_name
vrijednost1, vrijednost2,… vrijednostN

Ovdje, nabrajanje Ključna riječ koristi se za deklaraciju tipa nabrajanja, a vrijednosti će biti bilo koja konstantna vrijednost.  Različite upotrebe enum tipa u Javi prikazane su u sljedećem dijelu ovog vodiča.

Primjer-1: Deklariranje i ponavljanje vrijednosti nabrajanja

Kako se enum vrijednosti mogu definirati i pristupiti im pomoću petlje 'for' prikazano je u sljedećem primjeru. Ovdje su imena sedmodnevnih dana u kratkom obliku dodijeljena kao vrijednosti nabrajanja. Dalje, petlja 'for' koristi se za iteraciju svake vrijednosti iz radnih dana i ispis svake vrijednosti u svakom retku kao izlaz.

javni razred enum1
// Definiraj tip nabrajanja
javni popisi radnim danima
Ned, Ponedjeljak, Utorak, Srijeda, Četvrtak, Pet, Sub

// glavna () metoda
javna statička void glavna (String [] args)
Sustav.van.println ("Kratki obrazac od 7 radnih dana je:");
// Ponavljanje vrijednosti enum
za (radnim danom dan: radnim danom.vrijednosti ())
Sustav.van.println (dan);


Izlaz:

Sljedeći će se izlaz pojaviti nakon izvršavanja koda.

Primjer-2: Korištenje enum-a u naredbi if-else

Sljedeći primjer prikazuje upotrebu varijable enum s naredbom if-else-if. Ovdje je navedena enum varijabla tečajevi deklarira se s kodovima od četiri slijeda kao vrijednosti. Klasa sadrži konstruktor koji će inicijalizirati imenovanu varijablu tečaj bilo kojom vrijednošću nabrajanja. Ovdje će se pružiti kôd tečaja u vrijeme stvaranja objekta i provjeravat će se sa svakim uvjetom 'if' i ispisati poruku u kojoj uvjet vraća true. Ako se svi uvjeti vrate netačnim, tada će se ispisati poruka iz odjeljka else.

javni razred enum2
// Definiraj tip nabrajanja
tečajevi javnog popisa
CSE101, CSE205, CSE308, CSE407

// Deklariraj varijablu enum tipa
tečajevi tečaj;
// Objavi konstruktor
javni enum2 (tečaj)
ovaj.tečaj = tečaj;

a
javna statička void glavna (String [] args)
// Deklariranje objekta
enum2 objekt1 = novi enum2 (tečajevi.CSE205);
// Provjeri vrijednost tečaja
ako (objekt1.tečaj == tečajevi.CSE101)
Sustav.van.print ("Naziv tečaja je Computer Fundamental");
inače ako (objekt1.tečaj == tečajevi.CSE205)
Sustav.van.ispis ("Naziv tečaja je Struktura podataka");
inače ako (objekt1.tečaj == tečajevi.CSE308)
Sustav.van.print ("Naziv tečaja je Operativni sustav");
inače ako (objekt1.tečaj == tečajevi.CSE407)
Sustav.van.print ("Naziv tečaja je Unix programiranje");
drugo
Sustav.van.ispis ("Kôd tečaja ne postoji");

Izlaz:

U gornjem kodu, vrijednost enum, CSE205 pruža se u vrijeme stvaranja objekta koji se podudara s drugim uvjetom "ako" i ispisuje poruku, "Naziv tečaja je Struktura podataka."

Primjer-3: Korištenje enum-a s konstruktorom i metodom

Kako se enum konstruktor i enum metoda mogu definirati i koristiti u javi prikazani su u sljedećem primjeru. Dvanaest vrijednosti nabrajanja s kodovima definirano je u dvanaest mjeseci u kratkom obliku. Konstruktor enum-a s parametrom deklariran je u kodu koji inicijalizira imenovanu privatnu cijelu varijablu mKod. Imenovana metoda popisivanja readMCode () proglašava se da vraća vrijednosti od mKod. U glavni() metodom, šest se varijabli deklarira i inicijalizira s praznim nizom za pohranu određenih vrijednosti nabrajanja na temelju vrijednosti prekidača. Ovdje se petlja 'for' koristi za ponavljanje svake vrijednosti nabrajanja i deklariranje enum objekta na temelju svake vrijednosti. Kada se kreira bilo koji enum objekt, tada će se inicijalizirati kod odgovarajuće enum vrijednosti mKod. Povratna vrijednost readMCode () metoda će se koristiti u preklopniku za podudaranje s vrijednostima slučaja. Ovdje je definiran određeni blok izraza za dvije vrijednosti slučaja. Na primjer, 0 i 1 vratit će se kao mKod mjesecima, JAN i FEB. Imena ova dva mjeseca bit će pohranjena u varijabli s1 i ispisali vrijednost kombinirajući s drugim nizom. Isti zadatak učinit će se s ostalih pet varijabli, s2, s3, s4, s5, i s6, ostalih deset mjeseci.

Prema zakoniku, Zima bit će tiskan za mjesec JAN i FEB. Proljeće bit će tiskan za MAR i APR. Ljeto bit će tiskan za SVIBANJ i LIPANJ. Kišna sezona bit će tiskan za JUL i KOLOVOZ. Jesen bit će tiskan za SEP i OKT i Kasna jesen bit će tiskan za NOV i DEC.

javni razred enum3
javni brojevi mjeseci
SIJEČANJ (0), VELJAČA (1), MAR (2), ARP (3), SVIBANJ (4), LIPANJ (5),
SRPANJ (6), KOLOVOZ (7), SEP (8), LIST (9), NOV (10), DEC (11);
privatni int mCode;
// enum konstruktor
Mjeseci (int mCode)
ovaj.mCode = mCode;

// enum metoda
javni int readMCode ()
vrati ovo.mKod;


// glavna () metoda
javna statička void glavna (String [] args)
// Inicijalizirajte varijable
Niz s1 = "", s2 = "", s3 = "", s4 = "", s5 = "", s6 = "";
// Ponavljanje vrijednosti enum
za (Mjeseci mjesec: Mjeseci.vrijednosti ())
// Deklariraj enum objekt
Mjeseci m = mjesec;
prekidač (m.readMCode ())

slučaj 0:
slučaj 1:
ako (s1.jednako (""))
s1 = mjesec.toString ();
inače
s1 + = "i" + mjesec.toString ();
Sustav.van.println (s1 + "su zimski.");

pauza;
slučaj 2:
slučaj 3:
ako (s2.jednako (""))
s2 = mjesec.toString ();
inače
s2 + = "i" + mjesec.toString ();
Sustav.van.println (s2 + "su proljeće.");

pauza;
slučaj 4:
slučaj 5:
ako (s3.jednako (""))
s3 = mjesec.toString ();
inače
s3 + = "i" + mjesec.toString ();
Sustav.van.println (s3 + "su Ljeto.");

pauza;
slučaj 6:
slučaj 7:
ako (s4.jednako (""))
s4 = mjesec.toString ();
inače
s4 + = "i" + mjesec.toString ();
Sustav.van.println (s4 + "su sezona kiša.");

pauza;
slučaj 8:
slučaj 9:
ako (s5.jednako (""))
s5 = mjesec.toString ();
inače
s5 + = "i" + mjesec.toString ();
Sustav.van.println (s5 + "su jesen.");

pauza;
slučaj 10:
slučaj 11:
ako (s6.jednako (""))
s6 = mjesec.toString ();
inače
s6 + = "i" + mjesec.toString ();
Sustav.van.println (s6 + "su kasne jeseni.");

pauza;



Izlaz:

Sljedeći će se izlaz pojaviti nakon izvršavanja gornjeg koda.

Zaključak:

Kada trebamo raditi s konstantnim podacima, tada je bolje koristiti varijablu enum. Različite upotrebe enum tipa podataka objašnjene su u ovom vodiču kako bi se naučile prednosti korištenja tipa popisivanja u Javi.

Najbolje igre za ručno praćenje
Oculus Quest nedavno je predstavio sjajnu ideju ručnog praćenja bez kontrolera. Sa sve većim brojem igara i aktivnosti koje izvršavaju podršku bilo fo...
Kako prikazati OSD prekrivač u aplikacijama i igrama na cijelom zaslonu za Linux
Igranje igara preko cijelog zaslona ili upotreba aplikacija u režimu preko cijelog zaslona bez ometanja može vas odsjeći od relevantnih informacija o ...
Top 5 karata za hvatanje igara
Svi smo vidjeli i voljeli streaming reprodukcije na YouTubeu. PewDiePie, Jakesepticye i Markiplier samo su neki od najboljih igrača koji su zaradili m...