Enum on Java-tietotyyppi, joka sisältää ennalta määrätyn joukon vakioita. Viikonpäivät, värit ovat joitain yleisiä esimerkkejä Enumista. Luokkien tapaan voit käyttää Enumsia määrittääksesi omia tietotyyppejäsi. Enum voidaan ilmoittaa sekä luokan ulkopuolella että sisällä, mutta ei menetelmän sisällä.
Javassa ' enum ”-avainsanaa voidaan käyttää Enum-tyypin määrittämiseen. Enum ei voi periä mitään muuta luokkaa, koska se perii Java Enum -luokasta sisäisesti; Se voi kuitenkin käyttää erilaisia käyttöliittymiä.
Tämä artikkeli selittää Enum-luokan valueOf()-menetelmän käytön Javassa.
Kuinka käyttää Enum Java -luokan valueOf()-menetelmää?
' jonkin arvo() ” Enum-luokan menetelmää käytetään määritetyn enum-tyypin enumvakion saamiseksi sen nimellä. Tarkka merkkijono, jota käytetään ilmoittamaan Enum-vakio, välitetään valueOf()-metodille, joka palauttaa Enum-vakion. Se on isot ja pienet kirjaimet huomioiva menetelmä. Tämä menetelmä tekee myös poikkeuksen, jos yrität käyttää virheellistä merkkijonoa.
Syntaksi
Seuraavaa syntaksia käytetään ' jonkin arvo() 'menetelmä:
enum.valueOf ( 'vakioarvo' )
Täällä, ' enum ' on ilmoitetun numeron nimi, jota käytetään kutsumaan ' jonkin arvo() ' -menetelmää välittämällä merkkijono ' vakioarvo ”.
Esimerkki 1: Enum-vakioarvon käyttäminen
Ensin luomme luettelon nimeltä ' Ohjelmointikielet ' käyttämällä ' enum ' avainsana, joka sisältää vakioarvot:
enum Programming Languages {C, Java, Python
}
Main()-menetelmässä ' Esimerkki 'luokka, luomme ensin objektin' suunnitelma '-luettelosta ProgrammingLanguages, jotka tallentavat vakioarvon ja kutsuvat sitten ' jonkin arvo() '-menetelmä enumilla välittämällä merkkijono' Java ', jota käytetään vakion saamiseksi enumista:
ProgrammingLanguages plang = ProgrammingLanguages.valueOf ( 'Java' ) ;System.out.println ( 'sillä ne koostuvat:' + suunnitelma ) ;
Lähtö näytti määritetyn enum-vakion arvon:
Katsotaanpa, mitä tapahtuu, kun kutsumme elementtiä, jota ei ole enum-tyypissä.
Esimerkki 2: Ei-olemassa olevan Enum-vakioarvon käyttäminen
Tarkastelemme tässä esimerkissä aiemmin luotua enumia ja saamme vakion arvon C++ ', joka ei ole ProgrammingLanguages-luettelossa:
ProgrammingLanguages plang = ProgrammingLanguages.valueOf ( 'C++' ) ;System.out.println ( 'sillä ne koostuvat:' + suunnitelma ) ;
Tämän seurauksena kääntäjä tekee poikkeuksen:
Katsotaan mitä tapahtuu, kun kutsumme enumin nollaa.
Esimerkki 3: Nolla-enum-vakioarvon käyttäminen
Välitämme tyhjän merkkijonon ' jonkin arvo() ”menetelmä. Se tekee myös poikkeuksen, koska emme ole lisänneet mitään nollavakiota luotuun luetteloon:
ProgrammingLanguages plang = ProgrammingLanguages.valueOf ( ' ' ) ;System.out.println ( 'sillä ne koostuvat:' + suunnitelma ) ;
Lähtö
Katsotaanpa, kuinka kaikki enumin vakiot tulostetaan.
Esimerkki 4: Kaikkien Enum-vakioarvojen käyttäminen kerralla
Luokan main()-metodissa ' Esimerkki ', tulostamme kaikki enumin vakioarvot käyttämällä ' arvot() ' menetelmä ' varten 'silmukka. Käytämme tätä varten ' järjestysluku () ” -menetelmää saada enum-vakio indeksillä, kuten taulukkoindeksillä. Lopuksi valueOf()-menetelmä tulostaa kaikki enumin vakiot käyttämällä ' System.out.println() 'menetelmä:
System.out.println ( 'Luettelo 'ProgrammingLanguages' sisältää: ' ) ;varten ( ProgrammingLanguages pl : ProgrammingLanguages.values ( ) ) {
int i = pl.järjestys ( ) + 1 ;
System.out.println ( i+ ' ' +pl ) ;
}
Tulos näyttää kaikki ohjelmointikielet-nimisen enumin vakiot:
Kävimme läpi kaikki perusohjeet Java Enum -luokan valueOf() -metodin käytöstä.
Johtopäätös
' jonkin arvo() ” -menetelmää käytetään enumin vakion saamiseksi. Se hyväksyy ja palauttaa saman merkkijonon, jota käytettiin Enum-vakion määrittämisessä. Jos välitetty merkkijono ei ole enumin vakio, se tekee poikkeuksen. Lisäksi menetelmässä kirjainkoolla on merkitystä. Tässä artikkelissa selitimme Enum-luokkamenetelmän valueOf()-käytön yksityiskohtaisilla esimerkeillä.