使用属性

时间:2019-10-31 14:10:38

标签: java enums

我想知道是否可以通过指定其属性之一来设置枚举的值。 例如。假设我有以下枚举:

public enum Example
    {
    EXONE("Exone", 1), EXTWO("Extwo", 3);
    private final String type;
    private final int number;


    Example(String type,int number)
        {
        this.type = type;
        this.number = number
        }

    public String getType()
        {
        return this.type;
        }

    public int getNumber()
        {
        return number;
        }
    }

现在假设我想获取值EXTWO并将其存储在变量中。是否可以通过提供等于type属性的字符串来做到这一点?像这样:

String attribute = "Extwo";
Example ex_1 = Example.attribute

以上几行显然行不通,但我希望它们能阐明我想做的事情。 非常感谢

1 个答案:

答案 0 :(得分:1)

您可能想使用与每个枚举关联的valueOf()方法,

Example ex_1 = Example.valueOf(attribute.toUpperCase());