Cara Menggunakan Kaedah valueOf() Kelas Java Enum

Cara Menggunakan Kaedah Valueof Kelas Java Enum



Enum ialah jenis data dalam Java yang merangkumi set pemalar yang telah ditetapkan. Hari dalam seminggu, Warna ialah beberapa contoh biasa Enum. Sama seperti kelas, anda boleh menggunakan Enums untuk menentukan jenis data anda sendiri. Enum boleh dinyatakan di luar dan di dalam Kelas, tetapi tidak dalam Kaedah.

Di Jawa, ' enum ” kata kunci boleh digunakan untuk menentukan jenis Enum. Enum tidak boleh mewarisi mana-mana kelas lain kerana ia mewarisi daripada kelas Java Enum secara dalaman; namun, ia boleh menggunakan pelbagai antara muka.







Artikel ini akan menerangkan penggunaan kaedah valueOf() kelas Enum di Java.



Bagaimana untuk Menggunakan Kaedah valueOf() Kelas Java Enum?

' nilai() ” kaedah kelas Enum digunakan untuk mendapatkan pemalar enum jenis enum yang dinyatakan dengan namanya. String tepat yang digunakan untuk mengisytiharkan pemalar Enum dihantar kepada kaedah valueOf(), yang mengembalikan pemalar Enum. Ia adalah kaedah sensitif huruf besar-besaran. Kaedah ini juga membuang pengecualian jika anda cuba mengakses rentetan yang tidak sah.



Sintaks





Sintaks berikut digunakan untuk ' nilai() ' kaedah:

enum.valueOf ( 'ConstantValue' )



Di sini, ' enum ” ialah nama enum yang diisytiharkan digunakan untuk memanggil “ nilai() ' kaedah dengan menghantar String sebagai ' ConstantValue ”.

Contoh 1: Mengakses Nilai Malar Enum

Pertama, kami akan mencipta enum bernama ' Bahasa Pengaturcaraan ' menggunakan ' enum ” kata kunci yang mengandungi nilai malar:

enum Bahasa Pengaturcaraan {
C, Java, Python
}

Dalam kaedah utama() bagi “ Contoh 'kelas, kita akan buat objek dahulu' rancangan ” daripada enum ProgrammingLanguages ​​yang menyimpan nilai malar dan kemudian memanggil “ nilai() ' kaedah dengan enum dengan menghantar String ' Jawa ” yang akan digunakan untuk mendapatkan pemalar daripada enum:

ProgrammingLanguages ​​plang = ProgrammingLanguages.valueOf ( 'Jawa' ) ;
System.out.println ( 'kerana mereka terdiri:' + rancangan ) ;

Output memaparkan nilai pemalar enum yang ditentukan:

Mari lihat apa yang berlaku apabila kita memanggil elemen yang tidak wujud dalam jenis enum.

Contoh 2: Mengakses Nilai Malar Enum yang Tidak Sedia Ada

Kami akan mempertimbangkan enum yang dibuat sebelum ini dalam contoh ini dan mendapatkan nilai pemalar ' C++ ” yang tiada dalam enum Bahasa Pengaturcaraan:

ProgrammingLanguages ​​plang = ProgrammingLanguages.valueOf ( 'C++' ) ;
System.out.println ( 'kerana mereka terdiri:' + rancangan ) ;

Akibatnya, pengkompil akan membuang pengecualian:

Mari lihat apa yang berlaku apabila kita memanggil null dalam enum.

Contoh 3: Mengakses Nilai Malar Enum null

Kami akan melepasi String nol dalam ' nilai() ” kaedah. Ia juga akan membuang pengecualian kerana kami tidak menambah sebarang pemalar nol dalam enum yang dibuat:

ProgrammingLanguages ​​plang = ProgrammingLanguages.valueOf ( ' ' ) ;
System.out.println ( 'kerana mereka terdiri:' + rancangan ) ;

Pengeluaran

Mari lihat cara mencetak semua pemalar enum.

Contoh 4: Mengakses Semua Nilai Malar Enum Sekaligus

Dalam kaedah utama() kelas “ Contoh ”, kami akan mencetak semua nilai malar enum menggunakan “ nilai() ' kaedah dalam ' untuk ” gelung. Untuk berbuat demikian, kami akan menggunakan ' ordinal() ” kaedah untuk mendapatkan pemalar enum dengan indeks, seperti indeks tatasusunan. Akhir sekali, kaedah valueOf() akan mencetak semua pemalar enum dengan menggunakan “ System.out.println() ' kaedah:

System.out.println ( 'Enum 'Bahasa Pengaturcaraan' mengandungi: ' ) ;
untuk ( Bahasa Pengaturcaraan pl : ProgrammingLanguages.values ( ) ) {
int i = pl.ordinal ( ) + 1 ;
System.out.println ( i+ ' ' +pl ) ;

}

Output memaparkan semua pemalar enum bernama ProgrammingLanguages:

Kami merangkumi semua arahan asas untuk menggunakan kaedah valueOf() kelas Java Enum.

Kesimpulan

' nilai() ” kaedah digunakan untuk mendapatkan pemalar enum. Ia menerima dan mengembalikan String yang sama yang digunakan semasa pengisytiharan pemalar Enum. Jika rentetan yang diluluskan bukan pemalar enum, ia akan membuang pengecualian. Juga, kaedah ini adalah sensitif huruf besar-besaran. Dalam artikel ini, kami menerangkan penggunaan valueOf() kaedah kelas Enum dengan contoh terperinci.