Java中枚舉類的用法示例詳解
1.引入枚舉類
Java 枚舉是一個特殊的類,一般表示一組常量,比如一年的 4 個季節(jié),一個年的 12 個月份,一個星期的 7 天,方向有東南西北等。
Java 枚舉類使用 enum 關鍵字來定義,各個常量使用逗號 , 來分割。
示例:
enum Color
{
RED, GREEN, BLUE;
}
2.實現(xiàn)枚舉類
接下來我們來看一個一個簡單的DEMO示例:
/**
* java枚舉
*/
public class Enum {
public static void main(String[] args) {
System.out.println(Season.SPRING);
System.out.println(Season.SUMMER);
System.out.println(Season.AUTUMN);
System.out.println(Season.WINTER);
}
}
// 定義的枚舉類
enum Season {
// 枚舉定義的常量對象必須在最前面
SPRING("春天","萬物復蘇"),
SUMMER("夏天","烈日炎炎"),
AUTUMN("秋天","碩果累累"),
WINTER("冬天","寒冷刺骨");
private String name;
private String desc;
private Season(String name, String desc) {
this.name = name;
this.desc = desc;
}
public String getName() {
return name;
}
public String getDesc() {
return desc;
}
@Override
public String toString() {
return "Season{" +
"name='" + name + '\'' +
", desc='" + desc + '\'' +
'}';
}
}輸出:
Season{name='春天', desc='萬物復蘇'}
Season{name='夏天', desc='烈日炎炎'}
Season{name='秋天', desc='碩果累累'}
Season{name='冬天', desc='寒冷刺骨'}
3.枚舉類的使用注意事項
當我們使用enum關鍵字來開發(fā)一個枚舉類的時候,默認會繼承Eunm類,而且是一個final修飾的類
如果我們使用的是無參構造器,則枚舉中可以直接省略小括號
// 枚舉定義的常量對象必須在最前面
SPRING("春天", "萬物復蘇"),
SUMMER("夏天", "烈日炎炎"),
AUTUMN("秋天", "碩果累累"),
WINTER("冬天", "寒冷刺骨"),
Other, Shit;
Season() {
}
private Season(String name, String desc) {
this.name = name;
this.desc = desc;
}
4.枚舉的常用方法
我們用具體的程序示例來進行枚舉常用方法的演示:
/**
* 枚舉類方法
*/
public class EnumMethod {
public static void main(String[] args) {
Season autumn = Season.AUTUMN;
// 獲取當前枚舉對象的名稱
System.out.println(autumn.name());
// 輸出該枚舉對象的次序,從0開始
System.out.println(autumn.ordinal());
// 返回所有的枚舉對象
Season[] values = Season.values();
for (Season value : values) {
System.out.println(value);
}
// 將字符串轉化為枚舉對象,要求字符串必須為已有的常量名,否則會爆出一個異常
Season autumn1 = Season.valueOf("AUTUMN");
System.out.println(autumn1);
// 比較兩個枚舉常量,比較的就是編號
// AUTUMN的編號減去SUMMER的編號
System.out.println(Season.AUTUMN.compareTo(Season.SUMMER));
}
}輸出:
AUTUMN
2
Season{name='春天', desc='萬物復蘇'}
Season{name='夏天', desc='烈日炎炎'}
Season{name='秋天', desc='碩果累累'}
Season{name='冬天', desc='寒冷刺骨'}
Season{name='null', desc='null'}
Season{name='null', desc='null'}
Season{name='秋天', desc='碩果累累'}
1
5.enum細節(jié)
如果使用了enum,則該類不能再繼承其他的類,因為它默認繼承Enum父類,但是可以進行接口實現(xiàn)
到此這篇關于Java中枚舉類的用法示例詳解的文章就介紹到這了,更多相關Java枚舉類內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Java數(shù)據(jù)庫連接池之DBCP淺析_動力節(jié)點Java學院整理
這篇文章主要為大家詳細介紹了Java數(shù)據(jù)庫連接池之DBCP的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-08-08

