Java

Java Enumi õpetus

Java Enumi õpetus
Java enum on spetsiaalne Java-tüüp, mille määratleb Java-klass. Seda nimetatakse ka Java loenduse tüübiks. Kõigepealt tutvustatakse seda Java versioonis 5, mida kasutatakse peamiselt konstantide kogu määratlemiseks. Ohutuse koostamise tüüp tagatakse loenditüübi abil. Niisiis, kui kõik muutuja võimalikud väärtused on enne kompileerimisaega teada, on parem kasutada loenditüüpi. See määratleb klassi, mis alati ulatub Java-st.lang.Enum. Kuidas loenditüüpi saab Java-s deklareerida ja kasutada, on näidatud selles õpetuses.

Süntaks:

avalik enum enum_name
väärtus1, väärtus2,… väärtusN

Siin, loend märksõna kasutatakse loenduse tüübi deklareerimiseks ja väärtused on mis tahes konstantsed väärtused.  Java loendi tüübi erinevad kasutusalad on toodud selle õpetuse järgmises osas.

Näide 1: deklareerige ja korrake loendiväärtusi

Kuidas loendi väärtusi saab määratleda ja juurde pääseda silmusega „for”, on näidatud järgmises näites. Siin omistatakse loendiväärtustena seitsmepäevased lühivormis olevad nimed. Järgmisena kasutatakse tsüklit „for” iga nädala kordamiseks igast väärtusest ja iga rea ​​iga väärtuse printimiseks väljundina.

avalik klass enum1
// Määratlege loenditüüp
avaliku loenduse argipäevad
P, E, R, K, N, R, L

// main () meetod
public staatiline void main (String [] args)
Süsteem.välja.println ("Seitsme tööpäeva lühivorm on:");
// loenduse väärtuste kordamine
for (argipäevade päev: tööpäevad.väärtused())
Süsteem.välja.println (päev);


Väljund:

Pärast koodi käivitamist ilmub järgmine väljund.

Näide-2: lause en-kasutamine if-else lauses

Järgmine näide näitab muutuja enum kasutamist lausega if-else-if. Siin loendimuutuja nimega kursused deklareeritakse väärtustena neljakäigulise koodiga. Klass sisaldab konstruktorit, mis lähtestab nimetatud muutuja muidugi mis tahes loendi väärtuse järgi. Siin antakse objekti loomise ajal kursuse kood ja seda kontrollitakse iga tingimusega „kui” ja printitakse teade, kus tingimus on tõene. Kui kõik tingimused tagastavad vale, prinditakse sõnum jaotisest muu.

avalik klass enum2
// Määratlege loenditüüp
avaliku loenduse kursused
CSE101, CSE205, CSE308, CSE407

// Kuulutage loenditüübi muutuja
kursuste kursus;
// Deklareerige konstruktor
public enum2 (kursuste kursus)
seda.kursus = kursus;

a
public staatiline void main (String [] args)
// Kuuluta objekt
enum2 object1 = uus enum2 (kursused.CSE205);
// Kontrollige kursuse väärtust
kui (objekt1.kursus == kursused.CSE101)
Süsteem.välja.print ("Kursuse nimi on Computer Fundamental");
else if (objekt1.kursus == kursused.CSE205)
Süsteem.välja.print ("Kursuse nimi on andmestruktuur");
else if (objekt1.kursus == kursused.CSE308)
Süsteem.välja.print ("Kursuse nimi on operatsioonisüsteem");
else if (objekt1.kursus == kursused.CSE407)
Süsteem.välja.print ("Kursuse nimi on Unix Programming");
muud
Süsteem.välja.print ("Kursuse koodi pole olemas");

Väljund:

Ülaltoodud koodis loe väärtus, CSE205 pakutakse objekti loomise ajal, mis vastas teisele tingimusele „kui” ja printis sõnumi “Kursuse nimi on Data Structure.”

Näide 3: loenduri kasutamine koos konstruktori ja meetodiga

Kuidas enum-konstruktorit ja enum-meetodit Java-s saab määratleda ja kasutada, on näidatud järgmises näites. Kaksteist loendiväärtust koos koodidega määratakse kaheteistkümne kuuga lühikeses vormis. Parameetriga loendi konstruktor deklareeritakse koodis, mis initsialiseerib privaatse täisarvu muutuja nimega mKood. Nimega enum meetod readMCode () on deklareeritud tagastama väärtused mKood. Aastal peamine () meetodil deklareeritakse ja initsialiseeritakse tühja stringiga kuus muutujat, et salvestada konkreetsed loendiväärtused, mis põhinevad lülitusjuhtude väärtustel. Siin kasutatakse tsüklit 'for' iga loendiväärtuse kordamiseks ja iga väärtuse põhjal loendamisobjekti deklareerimiseks. Mis tahes loendobjekti loomisel lähtestatakse vastava loendi väärtuse kood mKood. Tagastusväärtus readMCode () meetodit kasutatakse lülituses juhtumiväärtustega sobitamiseks. Siin määratletakse konkreetne lauseplokk kahe juhtumi väärtuse jaoks. Näiteks 0 ja 1 tagastatakse kui mKood kuudeks, JAN ja Veebruar. Need kahe kuu nimed salvestatakse muutujasse s1 ja printis väärtuse, kombineerides seda muu stringiga. Sama ülesanne tehakse ka ülejäänud viie muutujaga, s2, s3, s4, s5, ja s6, ülejäänud kümme kuud.

Koodeksi järgi, Talv trükitakse kuu kohta JAN ja Veebruar. Kevad aastal trükitakse MAR ja APR. Suvi aastal trükitakse MAI ja JUUN. Vihmaperiood aastal trükitakse Juuli ja AUG. Sügis aastal trükitakse SEP ja ÜMT ja Hiline sügis aastal trükitakse NOV ja DETS.

avalik klass enum3
public enum Kuud
JAAN (0), veebruar (1), MAR (2), ARP (3), mai (4), juuni (5),
JUL (6), AUG (7), SEP (8), ÜMT (9), NOV (10), DEC (11);
private int mCode;
// enum konstruktor
Kuud (int mCode)
seda.mCode = mCode;

// enum meetod
public int readMCode ()
tagastage see.mKood;


// main () meetod
public staatiline void main (String [] args)
// Initsialiseerige muutujad
String s1 = "", s2 = "", s3 = "", s4 = "", s5 = "", s6 = "";
// loenduse väärtuste kordamine
jaoks (Kuude kuu: Kuud.väärtused())
// Deklareeri objekti enum
Kuud m = kuu;
lüliti (m.readMCode ())

juhtum 0:
1. juhtum:
kui (s1.võrdub (""))
s1 = kuu.toString ();
veel
s1 + = "ja" + kuu.toString ();
Süsteem.välja.println (s1 + "on talv.");

murda;
2. juhtum:
3. juhtum:
kui (s2.võrdub (""))
s2 = kuu.toString ();
veel
s2 + = "ja" + kuu.toString ();
Süsteem.välja.println (s2 + "on kevad.");

murda;
4. juhtum:
5. juhtum:
kui (s3.võrdub (""))
s3 = kuu.toString ();
veel
s3 + = "ja" + kuu.toString ();
Süsteem.välja.println (s3 + "on suvi.");

murda;
6. juhtum:
7. juhtum:
kui (s4.võrdub (""))
s4 = kuu.toString ();
veel
s4 + = "ja" + kuu.toString ();
Süsteem.välja.println (s4 + "on vihmaperiood.");

murda;
8. juhtum:
9. juhtum:
kui (s5.võrdub (""))
s5 = kuu.toString ();
veel
s5 + = "ja" + kuu.toString ();
Süsteem.välja.println (s5 + "on sügis.");

murda;
10. juhtum:
11. juhtum:
kui (s6.võrdub (""))
s6 = kuu.toString ();
veel
s6 + = "ja" + kuu.toString ();
Süsteem.välja.println (s6 + "on hilissügis.");

murda;



Väljund:

Pärast ülaltoodud koodi käivitamist ilmub järgmine väljund.

Järeldus:

Kui peame töötama pidevate andmetega, on parem kasutada muutuja enum. Selles loendis selgitatakse loenditüübi erinevaid kasutusviise, et teada saada Java loenduse tüübi kasutamise eeliseid.

X-Mouse Button Control abil saate hiire nupud erinevates tarkvarades erinevalt ümber teha
Võib-olla vajate tööriista, mis võiks muuta teie hiire juhtimissüsteemi iga kasutatava rakendusega. Sel juhul võite proovida rakendust nimega X hiiren...
Microsoft Sculpt Touch juhtmeta hiirte ülevaade
Lugesin hiljuti Microsoft Sculpt Touch juhtmevaba hiir ja otsustas selle osta. Pärast mõnda aega kasutamist otsustasin jagada sellega oma kogemusi. Se...
Rakenduse AppyMouse ekraanipaneel ja hiirekursor Windowsi tahvelarvutitele
Tahvelarvutite kasutajad tunnevad hiirekursorit sageli puudust, eriti kui neil on kombeks sülearvuteid kasutada. Puutetundliku ekraaniga nutitelefonid...