在Intellij中导入自定义Java枚举

时间:2015-01-29 00:23:56

标签: java intellij-idea enums

我在Intellij尝试了我的第一个Java项目,并且我正在尝试定义一个枚举,我们将调用ShadowField。在src文件夹中,我有我的UI.java和我的ShadowField枚举文件。但是,如果我尝试引用任何枚举值,它将无法识别该符号。我试图在文件的顶部放置一个include语句,但它也不识别该符号。我如何引用此枚举? Intellij有不同的方法吗?

作为参考,这是整个枚举文件:

public enum ShadowField {
   COMBAT, MAGIC, HACKING
}

1 个答案:

答案 0 :(得分:0)

这里是如何通过.ordinal()方法(为任何枚举返回int)来执行您想要执行的操作。

public UI() {
    System.out.println("Test");
    System.out.println(ShadowField.MAGIC.ordinal());
    System.out.println(ShadowField.COMBAT.ordinal() == 0);
}

但是,我可以建议你避免使用.ordinal()枚举吗?问问自己,如果在左侧添加枚举,代码会发生什么?

public enum ShadowField {
   AWESOME, COMBAT, MAGIC, HACKING
}

例如,这会破坏:

    if (myVar.ordinal() == 1) { ... }

这不会

    if (myVar == ShadowMagic.MAGIC) { ... }

祝你好运并开始乐趣:)