1. 程式人生 > >Java筆記:枚舉

Java筆記:枚舉

system out class 數值 運算符 通過 num str 繼承

一、基礎知識

枚舉常量為枚舉類型中的公有靜態成員,且其類型是聲明他們的枚舉類型。這些常量被稱為是自類型化的。由於是靜態常量,所以可直接使用關系運算符來比較兩個枚舉常量是否相等。此外可通過枚舉類型定義的values方法和valueOf方法獲取枚舉常量數值。

class Solution {
    enum Color {
        RED, BLUE, GREEN
    }

    public static void main(String[] args) {
        Color[] colors = Color.values();
        for (Color c : colors)
            System.out.println(c);
    }
}

枚舉常量是其枚舉類型的對象,在定義枚舉類型時可定義構造函數和方法。所有的枚舉都會自動繼承java.lang.Enum,部分方法如下:

  • ordinal方法返回枚舉常量的序數值。
  • compareTo方法返回與同類型其他枚舉常量比較的差值。
  • equals方法返回與同類型其他枚舉常量是否相等。
class Solution {
    enum Color {
        RED("#FF0000"), BLUE("#0000FF"), GREEN("#00FF00");
        private String code;

        Color(String code) {
            
this.code = code; } String getCode() { return code; } } public static void main(String[] args) { System.out.println(Color.valueOf("RED"));//輸出RED System.out.println(Color.valueOf("BLUE"));//輸出BLUE System.out.println(Color.valueOf("GREEN"));//
輸出GREEN Color[] colors = Color.values(); for (Color c : colors) System.out.println(c.ordinal()); for (Color i : colors) for (Color j : colors) { System.out.println(i.compareTo(j));//返回i.ordinal - j.ordinal System.out.println(i.equals(j)); } } }

Java筆記:枚舉