Java中的枚舉

爲什麼要有枚舉?

 

現在假設有這樣一個問題,要定義星期幾或者性別的變量,該怎麼定義?假設用1-7分別表示星期一到星期日,但有人可能寫成int weekday = 0

 

枚舉就是要讓某個類型的變量的取值只能爲若干個固定值中的一個,否則,編譯器就會報錯。枚舉可以讓編譯器在編譯時就可以控制源程序中填寫的非法值,普通變量的方式在開發階段無法實現這一目標。

 

下面來看一個枚舉的定義:

Week.java

 

 

由此看來,枚舉就相當於一個類,而枚舉裏面的每一個元素就相當於這個類的多個實例對象。

 

枚舉的常用方法:

.toString() 返回枚舉常量的名稱

.name() 返回此枚舉常量的名稱,在其枚舉聲明中對其進行聲明

.ordinal() 返回枚舉常量的序數(它在枚舉聲明中的位置,其中初始常量序數爲零)

.getDeclaringClass() 返回與此枚舉常量的枚舉類型相對應的 Class 對象

.valueOf(Class<T> enumType, String name) 返回帶指定名稱的指定枚舉類型的枚舉常量

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章