打印枚举变量和值

时间:2014-02-06 22:25:48

标签: java enums

我正在尝试测试enum,但我目前遇到了一些麻烦。我希望能够打印出值,但我不知道如何。

代码:

class test2 {
    public enum games {
        COD (3, 49.99), CS (5, 29.99), HL2 (5, 29.99), HALO (5, 49.99);
        int rating;
        float cost;
        games(int rating, float cost) {
            this.rating = rating;
            this.cost = cost;
        }
    }

    public static void main(String[] args) {
        for (games g : games.values()) {
            System.out.println(g +" " + g.rating + " " + g.cost);
        }
    }
}

3 个答案:

答案 0 :(得分:2)

您对枚举构造函数的调用对定义的字段cost使用了错误的类型。

您可以通过将字段类型更改为double或通过在调用中传递浮点数来更正此问题,即更改

    float cost;
    games(int rating, float cost) {

    double cost;
    games(int rating, double cost) {

或更改

    COD (3, 49.99), CS (5, 29.99), HL2 (5, 29.99), HALO (5, 49.99);

    COD (3, 49.99f), CS (5, 29.99f), HL2 (5, 29.99f), HALO (5, 49.99f);

如果有任何更改,您的代码运行正常。

答案 1 :(得分:1)

COD (3, 49.99f), CS (5, 29.99f), HL2 (5, 29.99f), HALO (5, 49.99f);

java中浮点的默认值是double; - )

答案 2 :(得分:1)

您必须替换

float

double

执行你的代码:)