Java

Výukový program Java Enum

Výukový program Java Enum
Java enum je špeciálny typ Java, ktorý sa definuje podľa triedy Java. Nazýva sa tiež typ Java výčtu. Je predstavený najskôr v Jave verzie 5, ktorá sa používa hlavne na definovanie súboru konštánt. Kompilovaný typ bezpečnosti je zabezpečený použitím typu enum. Keď sú teda všetky možné hodnoty premennej známe pred časom kompilácie, je lepšie použiť typ enum. Definuje triedu, ktorá vždy vychádza z Java.lang.Enum. Ako je možné deklarovať a používať typ enum v Jave, je uvedené v tomto výučbe.

Syntax:

verejné enum enum_name
hodnota1, hodnota2, ... hodnotaN

Tu, enum kľúčové slovo sa používa na deklarovanie typu výčtu a hodnotami bude ľubovoľná konštantná hodnota.  Rôzne použitia typu enum v jazyku Java sú uvedené v nasledujúcej časti tohto tutoriálu.

Príklad-1: Deklarujte a iterujte enumové hodnoty

Nasledujúci príklad ukazuje, ako je možné definovať a získať prístup k hodnotám enum pomocou slučky „for“. Tu sú názvy siedmich pracovných dní v krátkej forme priradené ako hodnoty enum. Ďalej sa slučka „pre“ používa na iteráciu každej hodnoty z pracovných dní a tlač každej hodnoty v každom riadku ako výstupu.

verejná trieda enum1
// Definujte typ enum
verejné enum pracovné dni
Ne, Pon, Utorok, St, Štv, Pia, Sob

// metóda main ()
public static void main (String [] args)
Systém.von.println ("Krátka forma 7 pracovných dní je:");
// Iterácia hodnôt enum
pre (všedné dni deň: všedné dni.hodnoty ())
Systém.von.println (deň);


Výkon:

Po vykonaní kódu sa objaví nasledujúci výstup.

Príklad-2: Použitie enum v príkaze if-else

Nasledujúci príklad ukazuje použitie premennej enum s príkazom if-else-if. Tu je pomenovaná premenná enum kurzov sa deklaruje so štvorchodovými kódmi ako hodnotami. Trieda obsahuje konštruktor, ktorý inicializuje premennú s názvom samozrejme o akúkoľvek hodnotu enum. Tu bude poskytnutý kód kurzu v čase vytvárania objektu, ktorý bude skontrolovaný pri každej podmienke „ak“ a vytlačí správu, v ktorej sa podmienka vráti pravdivo. Ak sú všetky podmienky neplatné, bude vytlačená správa zo sekcie else.

public class enum2
// Definujte typ enum
verejné výučbové kurzy
CSE101, CSE205, CSE308, CSE407

// Deklarujte premennú typu enum
kurz kurzov;
// Deklarovať konštruktor
public enum2 (kurz kurzov)
toto.kurz = kurz;

a
public static void main (String [] args)
// Deklarovať objekt
enum2 object1 = nový enum2 (kurzy.CSE205);
// Skontrolujte hodnotu kurzu
if (objekt1.kurz == kurzy.CSE101)
Systém.von.print („Názov kurzu je Computer Fundamental“);
inak if (object1.kurz == kurzy.CSE205)
Systém.von.print ("Názov kurzu je Dátová štruktúra");
inak if (object1.kurz == kurzy.CSE308)
Systém.von.print ("Názov kurzu je Operačný systém");
inak if (object1.kurz == kurzy.CSE407)
Systém.von.print ("Názov kurzu je Unixové programovanie");
inak
Systém.von.print ("Kód kurzu neexistuje");

Výkon:

Vo vyššie uvedenom kóde hodnota enum, CSE205 sa poskytuje v čase vytvárania objektu, ktorý sa zhodoval s druhou podmienkou „keby“ a vytlačil správu, “Názov kurzu je Dátová štruktúra.“

Príklad 3: Použitie enumu s konštruktorom a metódou

Ako je možné definovať konštruktor enum a metódu enum v jave, je uvedené v nasledujúcom príklade. Dvanásť hodnôt enum s kódmi je definovaných ako dvanásť mesiacov v skrátenej forme. V kóde, ktorý inicializuje premennú súkromného celého čísla s názvom, je deklarovaný konštruktor enumu s parametrom mCode. Vymenovaná metóda výčtu readMCode () je deklarované na vrátenie hodnôt mCode. V hlavný() metóda, deklaruje sa šesť premenných a inicializuje sa prázdnym reťazcom na uloženie konkrétnych hodnôt enum na základe hodnôt prepínania. Tu sa slučka „pre“ používa na iteráciu každej hodnoty enum a deklarovanie objektu enum na základe každej hodnoty. Keď sa vytvorí akýkoľvek objekt enum, potom sa inicializuje kód zodpovedajúcej hodnoty enum mCode. Návratová hodnota readMCode () v prepínači sa použije metóda, ktorá sa zhoduje s hodnotami malých a veľkých písmen. Tu je definovaný konkrétny blok výpisov pre dve hodnoty písmen. Napríklad 0 a 1 sa vrátia ako mCode na mesiace, JAN a FEB. Mená týchto dvoch mesiacov budú uložené v premennej s1 a hodnotu vytlačil kombináciou s iným reťazcom. Rovnaká úloha sa vykoná s ďalšími piatimi premennými, s2, s3, s4, s5, a s6, na ostatných desať mesiacov.

Podľa kódexu, Zimné bude vytlačené za mesiac JAN a FEB. Jar bude vytlačené pre mesiac MAR a APR. Leto bude vytlačené pre mesiac SMIEŤ a JÚN. Obdobie dažďov bude vytlačené pre mesiac JÚL a AUG. Jeseň bude vytlačené pre mesiac SEP a ZKÚ a Neskorá jeseň bude vytlačené pre mesiac NOV a DEC.

verejná trieda enum3
public enum Mesiace
JAN (0), FEB (1), MAR (2), ARP (3), MÁJ (4), JUN (5),
JUL (6), AUG (7), SEP (8), OCT (9), NOV (10), DEC (11);
private int mCode;
// enum constructor
Mesiace (int mCode)
toto.mCode = mCode;

// metóda enum
public int readMCode ()
vráť toto.mCode;


// metóda main ()
public static void main (String [] args)
// Inicializácia premenných
Reťazec s1 = "", s2 = "", s3 = "", s4 = "", s5 = "", s6 = "";
// Iterácia hodnôt enum
pre (Mesiace mesiac: Mesiace.hodnoty ())
// Deklaruje enum objekt
Mesiace m = mesiac;
prepínač (m.readMCode ())

prípad 0:
prípad 1:
ak (s1.sa rovná (""))
s1 = mesiac.natiahnuť();
else
s1 + = "a" + mesiac.natiahnuť();
Systém.von.println (s1 + "sú zimné.");

prestávka;
prípad 2:
prípad 3:
ak (s2.sa rovná (""))
s2 = mesiac.natiahnuť();
else
s2 + = "a" + mesiac.natiahnuť();
Systém.von.println (s2 + "sú jarné.");

prestávka;
prípad 4:
prípad 5:
ak (s3.sa rovná (""))
s3 = mesiac.natiahnuť();
else
s3 + = "a" + mesiac.natiahnuť();
Systém.von.println (s3 + "sú letné.");

prestávka;
prípad 6:
prípad 7:
ak (s4.sa rovná (""))
s4 = mesiac.natiahnuť();
else
s4 + = "a" + mesiac.natiahnuť();
Systém.von.println (s4 + "sú obdobia dažďov.");

prestávka;
prípad 8:
prípad 9:
ak (s5.sa rovná (""))
s5 = mesiac.natiahnuť();
else
s5 + = "a" + mesiac.natiahnuť();
Systém.von.println (s5 + "sú jesenné.");

prestávka;
prípad 10:
prípad 11:
ak (s6.sa rovná (""))
s6 = mesiac.natiahnuť();
else
s6 + = "a" + mesiac.natiahnuť();
Systém.von.println (s6 + "sú neskoro na jeseň.");

prestávka;



Výkon:

Po vykonaní vyššie uvedeného kódu sa objaví nasledujúci výstup.

Záver:

Keď potrebujeme pracovať s konštantnými údajmi, je lepšie použiť premennú enum. Rôzne použitia dátového typu enum sú vysvetlené v tomto tutoriále, aby sme sa naučili výhody používania typu enumerácie v Jave.

Hry Battle For Wesnoth 1.13.6 Vývoj uvoľnený
Battle For Wesnoth 1.13.6 Vývoj uvoľnený
Battle For Wesnoth 1.13.6 vydané minulý mesiac, je šiestym vývojovým vydaním v 1.13.séria x a prináša množstvo vylepšení, najmä používateľského rozhra...
Hry Ako nainštalovať League Of Legends na Ubuntu 14.04
Ako nainštalovať League Of Legends na Ubuntu 14.04
Ak ste fanúšikom League of Legends, potom je to pre vás príležitosť otestovať spustenie League of Legends. Upozorňujeme, že program PlayOnLinux podpor...
Hry Nainštalujte si najnovšiu strategickú hru OpenRA na Ubuntu Linux
Nainštalujte si najnovšiu strategickú hru OpenRA na Ubuntu Linux
OpenRA je herný engine Libre / Free Real Time Strategy, ktorý obnovuje rané hry z Westwoodu, ako napríklad klasické Command & Conquer: Red Alert. Dist...