1. 程式人生 > >java列舉型別enum值與整數的轉換

java列舉型別enum值與整數的轉換

java程式設計中偶爾會用到列舉,為了直觀,我們通常將列舉值設定為形象的單詞,方便理解和使用。列舉型別相當於資料庫

中字典表,但是列舉只有字典表的值,缺少其他用來表示和值一一對應的欄位,當我們在資料庫中儲存一個對應列舉型別

的列,我們希望儲存的是類似0,1,2,3,4這樣的數字,然後,表現在實體物件中,我們希望看到的是具有語義並且形象的字

符串,因此編碼過程中,我們會對列舉的值做一個對映。定義列舉語法如下:

public enum APPTYPE {
    install,
    download,
    click,
    datareport
    feedback
}
這樣,一個列舉型別的變數APPTYPE就宣告好了。接下來就會使用這個列舉型別。列舉型別對外提供了這樣幾個方法。
values():返回列舉值的陣列
ordinal():返回列舉值在列舉元素陣列中的下標
name():返回列舉值的字串,相當於toString()

通過這幾個方法我們可以方便來對列舉值和整數做對映。

例如我們想知道click對應的整數,可以通過APPTYPE.click.ordinal(),得到整數2

想知道3對應列舉中的值,可以通過APPTYPE.values()[3]來得到。