枚舉ordinal方法

枚舉的ordinal方法返回枚舉項(xiàng)在枚舉類中出現(xiàn)的序號(hào)

如下例子:

public enum Light {
       // 紅燈
       RED, 
       //綠燈  
       GREEN, 
       // 黃燈
       YELLOW;
}

public static void main(String[] args) {
    System.out.println(Light.GREEN.ordinal());
}

輸出結(jié)果是:1

類似數(shù)組的下標(biāo)。

很多業(yè)務(wù)需求中能耻,枚舉是與int相關(guān)聯(lián)的赏枚,如果你不在枚舉類中規(guī)定int,那么可以通過(guò)ordinal方法直接獲取枚舉項(xiàng)的序號(hào)晓猛。但這樣不夠直觀饿幅,而且不易維護(hù)(只能在尾部添加,不然會(huì)造成數(shù)據(jù)混亂)戒职。試想當(dāng)枚舉項(xiàng)越來(lái)越多的時(shí)候栗恩,想要知道枚舉項(xiàng)對(duì)應(yīng)的int值是多少并不容易。

Enum規(guī)范中談到ordinal時(shí)這么寫(xiě)到:“大多數(shù)的程序員都不需要這個(gè)方法洪燥。它是設(shè)計(jì)成用于像EnumSetEnumMap這種基于枚舉的通用數(shù)據(jù)結(jié)構(gòu)的磕秤。”除非你在編寫(xiě)的是這種數(shù)據(jù)結(jié)構(gòu)捧韵,否則最好完全避免使用ordinal方法市咆。

所以盡量避免使用ordinal

枚舉的一般使用

public enum Light {
    // 紅燈
    RED(0),
    //綠燈
    GREEN(1),
    // 黃燈
    YELLOW(2);

    private Integer id;

    Light(Integer id) {
        this.id = id;
    }

    public Integer getId(){
        return this.id;
    }
    
}
 public static void main(String[] args) {
        System.out.println(Light.GREEN.id);
    }

輸出結(jié)果是:1

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市再来,隨后出現(xiàn)的幾起案子蒙兰,更是在濱河造成了極大的恐慌,老刑警劉巖芒篷,帶你破解...
    沈念sama閱讀 217,734評(píng)論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件搜变,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡梭伐,警方通過(guò)查閱死者的電腦和手機(jī)痹雅,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,931評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)糊识,“玉大人绩社,你說(shuō)我怎么就攤上這事÷该纾” “怎么了愉耙?”我有些...
    開(kāi)封第一講書(shū)人閱讀 164,133評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)拌滋。 經(jīng)常有香客問(wèn)我朴沿,道長(zhǎng),這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,532評(píng)論 1 293
  • 正文 為了忘掉前任赌渣,我火速辦了婚禮魏铅,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘坚芜。我一直安慰自己览芳,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,585評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布鸿竖。 她就那樣靜靜地躺著沧竟,像睡著了一般。 火紅的嫁衣襯著肌膚如雪缚忧。 梳的紋絲不亂的頭發(fā)上悟泵,一...
    開(kāi)封第一講書(shū)人閱讀 51,462評(píng)論 1 302
  • 那天,我揣著相機(jī)與錄音闪水,去河邊找鬼糕非。 笑死,一個(gè)胖子當(dāng)著我的面吹牛敦第,可吹牛的內(nèi)容都是我干的峰弹。 我是一名探鬼主播,決...
    沈念sama閱讀 40,262評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼芜果,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼鞠呈!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起右钾,我...
    開(kāi)封第一講書(shū)人閱讀 39,153評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤蚁吝,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后舀射,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體窘茁,經(jīng)...
    沈念sama閱讀 45,587評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,792評(píng)論 3 336
  • 正文 我和宋清朗相戀三年脆烟,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了山林。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,919評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡邢羔,死狀恐怖驼抹,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情拜鹤,我是刑警寧澤框冀,帶...
    沈念sama閱讀 35,635評(píng)論 5 345
  • 正文 年R本政府宣布,位于F島的核電站敏簿,受9級(jí)特大地震影響明也,放射性物質(zhì)發(fā)生泄漏宣虾。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,237評(píng)論 3 329
  • 文/蒙蒙 一温数、第九天 我趴在偏房一處隱蔽的房頂上張望绣硝。 院中可真熱鬧,春花似錦帆吻、人聲如沸域那。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,855評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至败许,卻和暖如春王带,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背市殷。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,983評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工愕撰, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人醋寝。 一個(gè)月前我還...
    沈念sama閱讀 48,048評(píng)論 3 370
  • 正文 我出身青樓搞挣,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親音羞。 傳聞我的和親對(duì)象是個(gè)殘疾皇子囱桨,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,864評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容

  • 1. 概述 枚舉(enum)全寫(xiě)為的全稱為:enumeration。是jdk1.5才新引進(jìn)的概念嗅绰,在Java中en...
    WY長(zhǎng)河閱讀 697評(píng)論 0 0
  • Chapter 6 Enums and Annotations 枚舉和注解 JAVA supports two s...
    LaMole閱讀 812評(píng)論 0 2
  • 30窘面、用enum代替int常量 枚舉類型是指由一組固定的常量組成合法值的類型翠语。在java沒(méi)有引入枚舉類型前,表示枚...
    Alent閱讀 758評(píng)論 1 5
  • 18.7.18一财边、概述枚舉常量在類型安全性和便捷性都很有保證肌括,如果出現(xiàn)類型問(wèn)題編譯器也會(huì)提示我們改進(jìn)。除了不能繼承...
    靜心安分讀書(shū)閱讀 528評(píng)論 0 0
  • 枚舉和注解是Java1.5版本中新增的特性酣难,本章討論使用它們時(shí)的最佳實(shí)踐谍夭。本章內(nèi)容導(dǎo)圖: 1.用enum代替int...
    塞外的風(fēng)閱讀 939評(píng)論 0 0