首页 > 解决方案 > Java 枚举插入值

问题描述

我有一个如下创建的枚举

public enum CustomData {

    SHOW_VAL("","");

    private final String valCode;
    private final String valD;  

    CustomData(String valCode, String valD){
        this.valCode = valCode;
        this.valD = valD;
    }

    public String getvalCode() {
        return this.valCode;
    }

    public String getvalD() {
        return this.valD;
    }   
}

我使用枚举自定义数据抛出异常。现在,我可以创建多个静态类型,例如SHOW_VAL("TEXT","DESC"),但我想在运行时将文本放入其中,当任何错误发生时。

在上面的代码中,如何通过上面定义的构造函数在其他类中插入值?

标签: javaenums

解决方案


枚举是一个编译时间常数,你不能在运行时使用常规语言特性创建新的。根据枚举类型文档:

您应该在需要表示一组固定常量的任何时候使用枚举类型。这包括自然枚举类型,例如我们太阳系中的行星和您在编译时知道所有可能值的数据集——例如,菜单上的选择、命令行标志等。

class对运行时值使用正则。


推荐阅读