![Java enum——不一樣的枚舉對象](http://p2.ttnews.xyz/loading.gif)
簡介
枚舉類型(Enumerated Type) 很早就出現在編程語言中,它被用來將一組類似的值包含到一種類型當中。而這種枚舉類型的名稱則會被定義成獨一無二的類型描述符,在這一點上和常量的定義相似。不過相比較常量類型,枚舉類型可以為申明的變量提供更大的取值範圍。
![Java enum——不一樣的枚舉對象](http://p2.ttnews.xyz/loading.gif)
Enum,也就是枚舉,C++、Java、Objective-C、Swift這些語言都有對應的枚舉類型,功能可能有多有少,但是最核心的還是一個—-規範的定義代碼中的狀態、選項等“常量”。
Enum的特性
- Enum常量隱式的加上了static和final,一旦被創建就無法修改
- Enum提供了是類型安全的(type-safe)
- Enum隱式的加上了values()方法,返回一個數組包含所有的Enum常量
- 兩個Enum常量可以使用 ==或equals()方法比較
- Enum可以用在switch語句中,就像int,String。
- Enum有自己的名稱空間
- Enum可以實現Java接口
- 可以在Enum中定義構造器
Enum用法
- 常量
在JDK1.5 之前,我們定義常量都是: public static fianl…. 。現在好了,有了枚舉,可以把相關的常量分組到一個枚舉類型裡,而且枚舉提供了比常量更多的方法。
- switch
JDK1.6之前的switch語句只支持int,char,enum類型,使用枚舉,能讓我們的代碼可讀性更強。
- 向枚舉中添加新方法
如果打算自定義自己的方法,那麼必須在enum實例序列的最後添加一個分號。而且 Java 要求必須先定義 enum 實例。
- 使用接口組織枚舉
Enum 類型提出給 JAVA 編程帶了了極大的便利,讓程序的控制更加的容易,也不容易出現錯誤。所以在遇到需要控制程序流程時候,可以多想想是否可以利用 enum 來實現。
閱讀更多 咱小二 的文章