在java中使用Array Constant定义的枚举

时间:2011-12-23 09:41:17

标签: arrays enums

我想知道是否可以使用Array作为常量来定义枚举;请参阅以下代码摘录。

这不会因非法启动表达式错误而编译。愿任何人帮助我吗?。

非常感谢

public enum Currency
{
    *****PENNY(1, {"one", "oneone"}),*
    NICKLE(5, {"five"}),
    DIME(10, {"ten"}),
    QUARTER(25, {"twentifive"});****

    private int valueInteger;
    private String[] valueString;

    private Currency(int valueInteger, String[] valueString) {
        this.valueInteger = valueInteger;
        this.valueString = valueString;
    }

}

2 个答案:

答案 0 :(得分:1)

是的,你只需要初始化它们。例如,

NICKLE(5, new string[]{"five"})

答案 1 :(得分:0)

对于这个用例,我会改用vararg方法:

public enum Currency {
    PENNY(1, "one", "oneone"),
    NICKLE(5, "five"),
    DIME(10, "ten"),
    QUARTER(25, "twentifive");

    private int valueInteger;
    private String[] valueString;

    private Currency(int valueInteger, String... valueString) {
        this.valueInteger = valueInteger;
        this.valueString = valueString;
    }

}