成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Java枚舉簡(jiǎn)介

yuanzhanghu / 1539人閱讀

摘要:一枚舉的用法定義一個(gè)枚舉類,并在枚舉類中列出需要使用的字段。在需要使用這個(gè)枚舉屬性時(shí),直接使用即可。但有時(shí)候有點(diǎn)特殊的要求,比如在前后端協(xié)同時(shí)枚舉要求轉(zhuǎn)化成,在傳輸時(shí)減少字節(jié)。

一、 枚舉的用法1

    定義一個(gè)枚舉類,并在枚舉類中列出需要使用的字段。
    
    public enum State {
        START,
        DOING,
        DONE
    }

    在需要使用這個(gè)枚舉屬性時(shí),直接使用State.START即可。但有時(shí)候有點(diǎn)特殊的要求,比如在前后端協(xié)同時(shí)枚舉要求轉(zhuǎn)化成int,在傳輸時(shí)減少字節(jié)。這時(shí)候可以使用枚舉類自帶的一些API,這樣做的好處可以使用枚舉替代代碼中一些常量數(shù)字。
    
    int enumIndex = 0;
    State state = State.values()[enumIndex];
    
    String enumString = "DOING";
    State state1 = State.valueOf(enumString);
    
    State state2 = State.DONE;
    System.out.println(state2.toString());
    System.out.println(state2.ordinal()); 
    

首先要說明的是如果采用上述方式使用枚舉類,那枚舉類中的每個(gè)實(shí)體對(duì)象(用詞可能不準(zhǔn)確)都有一個(gè)index,該index與其在枚舉類中定義的位置有關(guān),如上面的START的對(duì)應(yīng)0.

values()方法會(huì)返回這個(gè)枚舉類中所有定義的實(shí)體對(duì)象,然后我們可以根據(jù)實(shí)體對(duì)象對(duì)應(yīng)的index取到這個(gè)實(shí)體對(duì)象并使用。

此外,還可以用valueOf()方法取到某個(gè)實(shí)體對(duì)象,當(dāng)傳入的String與定義的實(shí)體對(duì)象一致時(shí),即可取到這個(gè)實(shí)體對(duì)象并加以使用

最后,枚舉類中定義的實(shí)體對(duì)象,可以使用ordinal()獲取到其對(duì)應(yīng)的index,用toString()獲取到它String格式數(shù)據(jù)。

二、枚舉的用法2

public enum  Level {

    LOW(1, "low"),
    HIGH(2, "high");

    private int id;
    private String name;

    Level(int id, String name) {
        this.id = id;
        this.name = name;
    }

    public int getId() {
        return id;
    }

    public String getName() {
        return name;
    }
}

可以在枚舉類中定義屬性,這是在添加實(shí)體對(duì)象的時(shí)候需要根據(jù)構(gòu)造函數(shù)的規(guī)則進(jìn)行構(gòu)造(可以添加多個(gè)構(gòu)造函數(shù)),在使用枚舉類的實(shí)體屬性時(shí)就可以使用這些屬性。

如有不正確的地方歡迎指正

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/70304.html

相關(guān)文章

  • 深入理解單例模式

    摘要:總結(jié)我們主要介紹到了以下幾種方式實(shí)現(xiàn)單例模式餓漢方式線程安全懶漢式非線程安全和關(guān)鍵字線程安全版本懶漢式雙重檢查加鎖版本枚舉方式參考設(shè)計(jì)模式中文版第二版設(shè)計(jì)模式深入理解單例模式我是一個(gè)以架構(gòu)師為年之內(nèi)目標(biāo)的小小白。 初遇設(shè)計(jì)模式在上個(gè)寒假,當(dāng)時(shí)把每個(gè)設(shè)計(jì)模式過了一遍,對(duì)設(shè)計(jì)模式有了一個(gè)最初級(jí)的了解。這個(gè)學(xué)期借了幾本設(shè)計(jì)模式的書籍看,聽了老師的設(shè)計(jì)模式課,對(duì)設(shè)計(jì)模式算是有個(gè)更進(jìn)一步的認(rèn)識(shí)。...

    FuisonDesign 評(píng)論0 收藏0
  • Java 設(shè)計(jì)模式綜合運(yùn)用(門面+模版方法+責(zé)任鏈+策略+工廠方法)

    摘要:注解方式優(yōu)點(diǎn)使用注解方式可以極大的減少使用模版方法模式帶來的擴(kuò)展時(shí)需要繼承模版類的弊端,工廠注解的方式可以無需關(guān)心其他業(yè)務(wù)類的實(shí)現(xiàn),而且減少了類膨脹的風(fēng)險(xiǎn)。 在上一篇文章Java設(shè)計(jì)模式綜合運(yùn)用(門面+模版方法+責(zé)任鏈+策略)中,筆者寫了一篇門面模式、模版方法、責(zé)任鏈跟策略模式的綜合運(yùn)用的事例文章,但是后來筆者發(fā)現(xiàn),在實(shí)現(xiàn)策略模式的實(shí)現(xiàn)上,發(fā)現(xiàn)了一個(gè)弊端:那就是如果在后續(xù)業(yè)務(wù)發(fā)展中,需...

    Yuanf 評(píng)論0 收藏0
  • JAVA筆記 - 收藏集 - 掘金

    摘要:動(dòng)態(tài)代理個(gè)經(jīng)紀(jì)人如何代理個(gè)明星掘金在代理模式女朋友這么漂亮,你缺經(jīng)紀(jì)人嗎中我們用寶強(qiáng)的例子介紹了靜態(tài)代理模式的概念。掘金使用從頭創(chuàng)建一個(gè),這種方法比較簡(jiǎn)單。 動(dòng)態(tài)代理:1 個(gè)經(jīng)紀(jì)人如何代理 N 個(gè)明星 - Android - 掘金在 代理模式:女朋友這么漂亮,你缺經(jīng)紀(jì)人嗎? 中我們用寶強(qiáng)的例子介紹了靜態(tài)代理模式的概念。 本來我的目的是通過大家耳熟能詳?shù)睦觼砑由罾斫猓怯行┚W(wǎng)友指責(zé)...

    kamushin233 評(píng)論0 收藏0
  • Java學(xué)習(xí)路線總結(jié),搬磚工逆襲Java架構(gòu)師(全網(wǎng)最強(qiáng))

    摘要:哪吒社區(qū)技能樹打卡打卡貼函數(shù)式接口簡(jiǎn)介領(lǐng)域優(yōu)質(zhì)創(chuàng)作者哪吒公眾號(hào)作者架構(gòu)師奮斗者掃描主頁左側(cè)二維碼,加入群聊,一起學(xué)習(xí)一起進(jìn)步歡迎點(diǎn)贊收藏留言前情提要無意間聽到領(lǐng)導(dǎo)們的談話,現(xiàn)在公司的現(xiàn)狀是碼農(nóng)太多,但能獨(dú)立帶隊(duì)的人太少,簡(jiǎn)而言之,不缺干 ? 哪吒社區(qū)Java技能樹打卡?【打卡貼 day2...

    Scorpion 評(píng)論0 收藏0
  • 好文章必讀 - 收藏集 - 掘金

    摘要:方法即為收集器,它接收高階函數(shù)和的后端掘金年的第一天,我坐在獨(dú)墅湖邊,寫下這篇文章。正因如此,所以最全系列教程后端掘金是從版本開始引入的一個(gè)新的,可以替代標(biāo)準(zhǔn)的。 設(shè)計(jì)模式之單例模式 - 掘金前言 作為一個(gè)好學(xué)習(xí)的程序開發(fā)者,應(yīng)該會(huì)去學(xué)習(xí)優(yōu)秀的開源框架,當(dāng)然學(xué)習(xí)的過程中不免會(huì)去閱讀源碼,這也是一個(gè)優(yōu)秀程序員的必備素養(yǎng),在學(xué)習(xí)的過程中很多人會(huì)遇到的障礙,那就是設(shè)計(jì)模式。很多優(yōu)秀的框架會(huì)運(yùn)...

    FrozenMap 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<