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

java枚舉enum,根據(jù)value值獲取key鍵的操作

 更新時間:2021年02月24日 09:47:40   作者:jajave  
這篇文章主要介紹了java枚舉enum,根據(jù)value值獲取key鍵的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

1.ZjlxEnum.java

public enum ZjlxEnum implements IEnum {
  SFZ("1", "居民身份證"),
  XGZM("2", "香港特區(qū)護(hù)照/身份證明"),
  AMZM("3", "澳門特區(qū)護(hù)照/身份證明"),
  TWTXZ("4", "臺灣居民來往大陸通行證"),
  JWJZZ("5", "境外永久居住證"),
  HZ("6", "護(hù)照"),
  QT("7", "其他"); 
  private String value;
  private String label;   
  public String getValue() {
    return this.value;
  } 
  public String getLabel() {
    return this.label;
  }
}

2.調(diào)用方式:

private String getZjlx(String zjlxCn) {
  Optional<ZjlxEnum> m1 = EnumUtil.getEnumObject(ZjlxEnum.class, e -> e.getLabel().equals(zjlxCn));
  return m1.isPresent() ? m1.get().getValue() : null;
}

3.EnumUtil.java

public class EnumUtil { 
  private static Map<Class, Object> map = new ConcurrentHashMap<>(); 
  /**
   * 根據(jù)條件獲取枚舉對象
   *
   * @param className 枚舉類
   * @param predicate 篩選條件
   * @param <T>
   * @return
   */
  public static <T> Optional<T> getEnumObject(Class<T> className, Predicate<T> predicate) {
    if (!className.isEnum()) {
      return null;
    }
    Object obj = map.get(className);
    T[] ts = null;
    if (obj == null) {
      ts = className.getEnumConstants();
      map.put(className, ts);
    } else {
      ts = (T[]) obj;
    }
    return Arrays.stream(ts).filter(predicate).findAny();
  }
}

補(bǔ)充:Java遍歷枚舉(Enum)的Value和相對應(yīng)的Index

遍歷枚舉:

public class ColorIndexTest { 
  @SuppressWarnings("resource")
  public static void main(String[] args) {
    // TODO Auto-generated method stub
    HSSFColorPredefined[] allColor = HSSFColorPredefined.values();
    for(int i = 0;i < allColor.length;i++) {
      System.out.println(allColor[i].name() + " == " + allColor[i].ordinal());
    }
  }
}

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

相關(guān)文章

  • java實現(xiàn)國產(chǎn)sm4加密算法

    java實現(xiàn)國產(chǎn)sm4加密算法

    這篇文章主要介紹了java實現(xiàn)國產(chǎn)sm4加密算法的步驟,幫助大家更好的理解和使用Java,感興趣的朋友可以了解下
    2020-12-12
  • Java替換字符串replace和replaceAll方法舉例詳解

    Java替換字符串replace和replaceAll方法舉例詳解

    這篇文章主要介紹了Java中替換字符串的幾種方法,包括String類的replace()、replaceAll()、replaceFirst()方法,以及StringBuilder和StringBuffer類的replace()方法,還提到了一些第三方庫,如Hutool,它們提供了更豐富的字符串處理功能,需要的朋友可以參考下
    2025-02-02
  • java使用ant.jar解壓縮文件的示例代碼

    java使用ant.jar解壓縮文件的示例代碼

    這篇文章主要介紹了java使用ant.jar解壓縮文件,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-09-09
  • java字符串常用操作方法(查找、截取、分割)

    java字符串常用操作方法(查找、截取、分割)

    今天小編就為大家分享一篇java字符串常用操作方法(查找、截取、分割),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07
  • Java CountDownLatch的源碼硬核解析

    Java CountDownLatch的源碼硬核解析

    對于并發(fā)執(zhí)行,Java中的CountDownLatch是一個重要的類。為了更好的理解CountDownLatch這個類,本文將通過例子和源碼帶領(lǐng)大家深入解析這個類的原理,感興趣的可以學(xué)習(xí)一下
    2022-10-10
  • Java中隊列(Queue)和列表(List)的區(qū)別解析

    Java中隊列(Queue)和列表(List)的區(qū)別解析

    Java中的列表(List)和隊列(Queue)是兩種常用的數(shù)據(jù)結(jié)構(gòu),它們分別用于不同的場景,列表是有序的,支持隨機(jī)訪問,允許重復(fù)元素,并且可以通過索引插入或刪除元素,下面通過本文給大家介紹Java中隊列(Queue)和列表(List)的區(qū)別,感興趣的朋友一起看看吧
    2025-03-03
  • 深入理解java異常處理機(jī)制及應(yīng)用

    深入理解java異常處理機(jī)制及應(yīng)用

    本篇文章主要介紹了java異常處理機(jī)制及應(yīng)用,異常處理機(jī)制是Java語言的一大特色。從異常處理的機(jī)制、異常處理的方法、異常處理的原則等方面介紹Java語言的異常處理技術(shù),有興趣的可以了解一下。
    2016-12-12
  • 解決SpringBoot文件上傳臨時目錄找不到的問題

    解決SpringBoot文件上傳臨時目錄找不到的問題

    這篇文章主要介紹了解決SpringBoot文件上傳臨時目錄找不到的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • IDEA之項目run按鈕為灰色,無法運行問題

    IDEA之項目run按鈕為灰色,無法運行問題

    這篇文章主要介紹了IDEA之項目run按鈕為灰色,無法運行問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • Mybatis 中如何判斷集合的size

    Mybatis 中如何判斷集合的size

    這篇文章主要介紹了在Mybatis中判斷集合的size操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02

最新評論

永春县| 西和县| 新沂市| 邵阳县| 宿松县| 宁陵县| 文化| 丁青县| 隆尧县| 新田县| 库尔勒市| 天长市| 北海市| 抚宁县| 石嘴山市| 东丰县| 凌云县| 尤溪县| 屏南县| 武安市| 萨嘎县| 平阴县| 泗水县| 晴隆县| 临澧县| 阳原县| 和平区| 桓仁| 昭苏县| 迭部县| 安阳市| 灵璧县| 陕西省| 宁阳县| 曲麻莱县| 华亭县| 清新县| 孟津县| 上栗县| 阿坝县| 娱乐|