最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java如何獲取枚舉類型的值

 更新時(shí)間:2023年07月24日 14:47:11   作者:Henicr  
這篇文章主要介紹了Java如何獲取枚舉類型的值問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

Java獲取枚舉類型的值

枚舉類

public enum EasyExcelStyleType {
? ? NONE("默認(rèn)樣式", ExcelExportStylerDefaultImpl.class),
? ? BORDER("邊框樣式", ExcelExportStylerBorderImpl.class),
? ? COLOR("間隔行樣式", ExcelExportStylerColorImpl.class),
? ? ONE("自定義樣式一", EasyExcelStyle.class);
? ? EasyExcelStyleType(String str, Class<?> cla) {
? ? ?? ?// 傳遞屬性值
? ? ? ? this.str = str;
? ? ? ? this.cla = cla;
? ? }
?? ?// 屬性Getter,Setter方法
? ? private String str;
? ? private Class<?> cla;
? ? public String getStr() {
? ? ? ? return str;
? ? }
? ? public void setStr(String str) {
? ? ? ? this.str = str;
? ? }
? ? public Class<?> getCla() {
? ? ? ? return cla;
? ? }
? ? public void setCla(Class<?> cla) {
? ? ? ? this.cla = cla;
? ? }
}

獲取方法

public static void main(String[] args) throws Exception {
? ? ? ? // 獲取屬性一(str)
? ? ? ? System.out.println(EasyExcelStyleType.valueOf("ONE").getStr());
? ? ? ? System.out.println(EasyExcelStyleType.ONE.getStr());
? ? ? ? // 獲取屬性二(cla)
? ? ? ? System.out.println(EasyExcelStyleType.valueOf("ONE").getCla());
? ? ? ? System.out.println(EasyExcelStyleType.ONE.getCla());
? ? }

輸出

java反射獲取枚舉值

先說下枚舉類的結(jié)構(gòu):

枚舉類中有許多枚舉常量,枚舉常量由枚舉類中各個(gè)字段組成,更確切的說,枚舉常量由構(gòu)造方法入?yún)⒆侄螛?gòu)成。

所以如果要獲取枚舉常量中的值,首先需要使用class的getEnumConstants()方法獲取枚舉類中所有的枚舉常量,然后使用類中對(duì)應(yīng)的方法,得到常量中包含字段的值。

代碼如下:

枚舉類代碼示例

package com.ecarx.jsk.jdk.poi;
public enum ResultCode {
? ? CODE_5200("8200", "認(rèn)證失敗"),
? ? CODE_5201("8201", "用戶不存在"),
? ? CODE_5202("8202", "Token驗(yàn)證失敗"),
? ? CODE_5203("8203", "Token刷新失敗");
? ? private String code;
? ? private String name;
? ? private ResultCode(String code, String name) {
? ? ? ? this.code = code;
? ? ? ? this.name = name;
? ? }
? ? public String getCode() {
? ? ? ? return this.code;
? ? }
? ? public void setCode(String code) {
? ? ? ? this.code = code;
? ? }
? ? public String getName() {
? ? ? ? return this.name;
? ? }
? ? public void setName(String name) {
? ? ? ? this.name = name;
? ? }
}

利用反射獲取枚舉值代碼

? ? @Test
? ? public void getEnumValue() throws Exception {
? ? ? ? // 1.得到枚舉類對(duì)象
? ? ? ? Class<?> clz = ResultCode.class;
? ? ? ? // 2.得到所有枚舉常量
? ? ? ? Object[] objects = clz.getEnumConstants();
? ? ? ? Method getCode = clz.getMethod("getCode");
? ? ? ? Method getName = clz.getMethod("getName");
? ? ? ? for (Object obj : objects){
? ? ? ? // 3.調(diào)用對(duì)應(yīng)方法,得到枚舉常量中字段的值
? ? ? ? ? ? System.out.println("code=" + getCode.invoke(obj) + "; name=" + getName.invoke(obj));
? ? ? ? }
? ? }

輸出結(jié)果

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java如何實(shí)現(xiàn)kaptcha網(wǎng)頁驗(yàn)證碼驗(yàn)證

    Java如何實(shí)現(xiàn)kaptcha網(wǎng)頁驗(yàn)證碼驗(yàn)證

    在做關(guān)于SSM項(xiàng)目之商鋪系統(tǒng)時(shí),了解到了kaptcha實(shí)現(xiàn)網(wǎng)頁驗(yàn)證碼驗(yàn)證,感覺就很有趣,所以便開始學(xué)習(xí)記錄了起來,復(fù)制粘貼即可用
    2025-01-01
  • Java注解詳解及實(shí)現(xiàn)自定義注解的方法

    Java注解詳解及實(shí)現(xiàn)自定義注解的方法

    這篇文章主要介紹了Java注解詳解及實(shí)現(xiàn)自定義注解的方法,本文給大家介紹了jdk中預(yù)定義的一些注解及自定義注解的相關(guān)知識(shí),需要的朋友可以參考下
    2022-06-06
  • 基于Java POI實(shí)現(xiàn)動(dòng)態(tài)列Excel導(dǎo)出的通用方法

    基于Java POI實(shí)現(xiàn)動(dòng)態(tài)列Excel導(dǎo)出的通用方法

    在企業(yè)級(jí)開發(fā)中,Excel導(dǎo)出功能是常見需求,當(dāng)面對(duì)前端動(dòng)態(tài)傳參、列數(shù)不確定的場(chǎng)景時(shí),編寫通用的動(dòng)態(tài)列導(dǎo)出方法能顯著提升開發(fā)效率,本文將結(jié)合Java POI框架,詳細(xì)解析如何實(shí)現(xiàn)支持多級(jí)表頭、動(dòng)態(tài)列求和及合并單元格的Excel導(dǎo)出功能,并提供完整代碼示例與使用說明
    2025-07-07
  • C++ 虛函數(shù)與純虛函數(shù)代碼詳解

    C++ 虛函數(shù)與純虛函數(shù)代碼詳解

    本文主要介紹了C++ 虛函數(shù)與純虛函數(shù)的使用與區(qū)別,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • springboot封裝響應(yīng)實(shí)體的實(shí)例代碼

    springboot封裝響應(yīng)實(shí)體的實(shí)例代碼

    這篇文章主要介紹了springboot封裝響應(yīng)實(shí)體,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-07-07
  • Spring實(shí)現(xiàn)IoC和DI的方法詳解

    Spring實(shí)現(xiàn)IoC和DI的方法詳解

    IoC全稱Inversion of Control (控制反轉(zhuǎn)) ,這里的控制其實(shí)是控制權(quán)的意思,可以理解為對(duì)象的獲取權(quán)力和方式發(fā)生了發(fā)轉(zhuǎn),DI依賴注?是?個(gè)過程,是指IoC容器在創(chuàng)建Bean時(shí), 去提供運(yùn)?時(shí)所依賴的資源,?資源指的就是對(duì)象,本文介紹了Spring實(shí)現(xiàn)IoC和DI的方法
    2024-08-08
  • SpringSecurity注銷設(shè)置的方法

    SpringSecurity注銷設(shè)置的方法

    這篇文章主要為大家詳細(xì)介紹了SpringSecurity注銷設(shè)置的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-09-09
  • Java程序初始化啟動(dòng)自動(dòng)執(zhí)行的三種方式

    Java程序初始化啟動(dòng)自動(dòng)執(zhí)行的三種方式

    這篇文章主要介紹了Java程序初始化啟動(dòng)自動(dòng)執(zhí)行的三種方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • Dubbo注冊(cè)中心與服務(wù)發(fā)現(xiàn)詳解

    Dubbo注冊(cè)中心與服務(wù)發(fā)現(xiàn)詳解

    本文全面介紹了Dubbo注冊(cè)中心及服務(wù)發(fā)現(xiàn)機(jī)制,包括Zookeeper、Nacos、Multicast等多種注冊(cè)中心的配置方法、高可用特性及其在接口級(jí)和應(yīng)用級(jí)服務(wù)發(fā)現(xiàn)中的應(yīng)用,支持多注冊(cè)中心和高階服務(wù)治理能力,實(shí)現(xiàn)微服務(wù)的動(dòng)態(tài)擴(kuò)容和流量管控
    2025-10-10
  • 一文詳解Java?etcd的應(yīng)用場(chǎng)景及編碼實(shí)戰(zhàn)

    一文詳解Java?etcd的應(yīng)用場(chǎng)景及編碼實(shí)戰(zhàn)

    etcd?是一個(gè)高度一致的分布式鍵值存儲(chǔ)系統(tǒng)。本文旨在幫助大家理解etcd,從宏觀角度俯瞰etcd全局,掌握etcd的基本操作技能,需要的可以參考一下
    2022-08-08

最新評(píng)論

滨海县| 天水市| 阿合奇县| 蛟河市| 丹巴县| 云浮市| 密云县| 即墨市| 河曲县| 东台市| 淳安县| 泰来县| 台安县| 定远县| 平潭县| 平度市| 磴口县| 萨迦县| 宜黄县| 庐江县| 周至县| 长宁区| 砀山县| 麟游县| 辽中县| 新营市| 高邮市| 新化县| 江西省| 盘山县| 青州市| 兴义市| 都安| 渝中区| 仙游县| 礼泉县| 左云县| 广水市| 阿克| 大城县| 虎林市|