Java筆記:枚舉
阿新 • • 發佈:2018-02-16
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筆記:枚舉