當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Java Enum valueOf()用法及代碼示例


Enum類valueOf()方法

  • valueOf() 方法可在java.lang包。
  • valueOf() 方法用於使用給定參數 en_name(enum name) 檢索給定參數 en_ty(enum type) 的枚舉常量,我們需要記住一件事,方法中指定的枚舉名稱必須與此處聲明的枚舉常量相同枚舉類型。
  • valueOf() 方法是一個非靜態方法,它隻能通過類對象訪問,如果我們嘗試使用類名訪問方法,那麽我們將得到一個錯誤。
  • valueOf() 方法在檢索枚舉常量時可能會拋出異常:
    • IllegalArgumentException:當給定的枚舉類型不包含具有給定名稱的枚舉常量時。
    • NullPointerException :當給定的第一個參數表示 null 時。

用法:

    public static T valueOf(Class<T> en_ty , String en_name);

參數:

  • Class<T> en_ty– 表示返回常量的枚舉類型的 Class 對象。
  • String en_name– 表示枚舉常量的名稱。

返回值:

這個方法的返回類型是T,它返回枚舉常量以及給定的枚舉名稱。

例:

// Java program to demonstrate the example 
// of T valueOf(Class<T> en_ty , String en_name)
// method of Enum 

enum Month {
    JAN,
    FEB,
    MAR,
    APR,
    MAY;
}

public class ValueOf {
    public static void main(String args[]) {

        Month m1 = Month.valueOf("JAN");
        Month m2 = Month.valueOf("FEB");
        Month m3 = Month.valueOf("MAR");
        Month m4 = Month.valueOf("APR");
        Month m5 = Month.valueOf("MAY");

        System.out.println("Display value:");

        // By using valueOf() method is to return the value of
        // enum constant 
        System.out.println("Month.valueOf(JAN) " + " " + m1.toString());
        System.out.println("Month.valueOf(FEB) " + " " + m2.toString());
        System.out.println("Month.valueOf(MAR)" + " " + m3.toString());
        System.out.println("Month.valueOf(APR)" + " " + m4.toString());
        System.out.println("Month.valueOf(MAY)" + " " + m5.toString());
    }
}

輸出

Display value:
Month.valueOf(JAN)  JAN
Month.valueOf(FEB)  FEB
Month.valueOf(MAR) MAR
Month.valueOf(APR) APR
Month.valueOf(MAY) MAY


相關用法


注:本文由純淨天空篩選整理自Preeti Jain大神的英文原創作品 Java Enum valueOf() method with example。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。