当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。