我們是否可以在 Java 中將整數作為列舉元素?


Java 中的列舉(enum)是一種儲存一組常量值的資料型別。你可以使用列舉來儲存固定值,例如一週中的天數、一年的月份等。

你可以使用關鍵字 enum 來定義列舉,然後跟隨列舉的名稱,如下所示 −

enum Days {
   SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY
}

如同陣列一樣,列舉中的元素/常量使用數字來標識,從 0 開始;在上例中,天數使用數字標識,如下面的插圖所示 −

整數作為列舉元素

不,我們只能將字串作為列舉中的元素。在列舉中使用字串會生成編譯時錯誤。

示例

在下面的 java 示例中,我們嘗試將 3 個整數值作為列舉的元素。

enum EnumTest {
   10024, 5336, 9987
}

輸出

EnumTest.java:1: error: <identifier> expected
   enum EnumTest {
               ^
EnumTest.java:2: error: ',', '}', or ';' expected
   10024, 5336, 9987
   ^
EnumTest.java:2: error: '}' expected
   10024, 5336, 9987
      ^
3 errors

相反,你可以將整數值用作列舉元素。

示例

enum StudentMarks {
   //Constants with values
   Krishna(86), Katyayani(75), Bhanu(89), Bhargav(70), Lata(90);
   //Instance variable
   private int marks;
   //Constructor to initialize the instance variable
   StudentMarks(int marks) {
      this.marks = marks;
   }
   public static void getMarks(int model){
      StudentMarks marks[] = StudentMarks.values();
      System.out.println("Price of: "+marks[model]+" is "+marks[model].marks);
   }
}
public class Sample{
   public static void main(String args[]){
      StudentMarks m[] = StudentMarks.values();
      for(int i = 0; i<m.length; i++ ) {
         StudentMarks.getMarks(i);
      }
   }
}

輸出

Price of: Krishna is 86
Price of: Katyayani is 75
Price of: Bhanu is 89
Price of: Bhargav is 70
Price of: Lata is 90

更新日期:2019 年 8 月 6 日

9K+ 瀏覽量

開啟您的 職業生涯

完成課程獲得認證

開始
廣告