訪問列舉中所有定義的常量的Java程式
在JDK 5版本之後,Java引入了列舉。它是一組使用關鍵字“enum”定義的常量。Java中的final變數與列舉有些相似。
在這篇文章中,我們將編寫一個Java程式,在其中定義一個列舉類,並嘗試使用valueOf()和values()方法訪問列舉中定義的所有常量。
列舉
當我們需要定義一組固定的常量時,我們使用列舉類。例如,如果我們想使用一週中的幾天、行星名稱、所有五個母音的名稱等。請注意,所有常量的名稱都以大寫字母宣告。
儘管列舉在Java中是一種類型別,但我們不能例項化它。列舉中定義的每個常量都是其列舉型別的例項。它提供了類的其他功能,例如我們可以建立它的例項變數、方法和建構函式。
語法
Enum enumeration_name {
// constants values
}
示例
enum Planet {
EARTH, MARS, JUPYTER, NEPTUNE, SATURN, URANUS, VENUS;
}
上面的示例說明了如何建立列舉類。列舉的名稱是Planet,變數EARTH、MARS是它的常量。預設情況下,它們宣告為public和static。這些常量是自型別的,因為它們的型別由定義它們的列舉定義。在這種情況下,它們是Planet型別。
訪問列舉中所有定義的常量的程式
valueOf()和values()是兩個預定義的方法,它們將幫助我們獲取列表中定義的常量的值。
valueOf() − 它返回作為引數傳遞的常量的值。
values() − 它返回一個包含列舉類中所有常量的陣列。
示例1
下面的示例演示瞭如何使用valueOf()方法獲取常量:
enum Vibgyor {
// creating enumeration
VIOLET, INDIGO, BLUE, GREEN, YELLOW, ORANGE, RED;
// constants
}
public class Main {
public static void main(String[] args) {
System.out.println("The color present in VIBGYOR: ");
Vibgyor color = Vibgyor.ORANGE;
System.out.println(color + " is present at index: " + color.ordinal());
Vibgyor colr = Vibgyor.valueOf("INDIGO");
System.out.println(colr);
System.out.print(Vibgyor.valueOf("RED"));
}
}
輸出
The color present in VIBGYOR: ORANGE is present at index: 5 INDIGO RED
在上面的程式中,我們建立了一個帶有某些常量的列舉“Vibgyor”。兩個變數“color”和“colr”是Vibgyor型別的列舉變數。使用這些變數,我們已經獲取了常量。使用valueOf()方法,我們可以一次獲取一個專案。這裡的ordinal()方法用於訪問ORANGE的索引值。索引從0開始。我們也可以在不建立任何變數的情況下訪問常量。
示例2
下面的示例演示瞭如何使用values()方法獲取常量:
enum Vibgyor {
VIOLET, INDIGO, BLUE, GREEN, YELLOW, ORANGE, RED;
}
public class Main {
public static void main(String[] args) {
System.out.println("The color present in VIBGYOR: ");
// for each loop to iterate through all constants
for(Vibgyor color : Vibgyor.values()) {
System.out.println(color);
}
}
}
輸出
The color present in VIBGYOR: VIOLET INDIGO BLUE GREEN YELLOW ORANGE RED
在上面的程式中,我們使用單個for each迴圈訪問了所有常量。values()方法可以一次訪問多個值。
結論
在這篇文章中,我們討論了列舉及其方法。我們建立了一個Java程式來了解如何使用values()和valueOf()方法訪問列舉中定義的所有常量。
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP