[英]java : Error in Enum Declaration Saying Misplaced Constructors
我可能得到任何类型的结果,所以我这样定义枚举
public enum Result
{
1, 2,3, 4,5, 6,7, 8
}
String resultvalue = calculateResult();
switch (Result .valueOf(resultvalue ))
{
}
但我在Enum宣言本身就说错误的建设者。
请有人帮帮我
它们基本上不是枚举值的有效标识符。 你需要在它们前面添加一个字母或_。 您还需要做出独特的标识符-目前你已经有了0010
的四倍...
一旦你对它进行了整理,剩下的应该没问题 - 但是如果你有任何问题,请发一个简短但完整的程序,而不是片段。
0001
不是有效的Java标识符。 Java标识符不能以数字开头。
虽然我不明白你想要实现什么以及为什么你有重复。 类似的东西(可能使用int而不是String)应该可以工作。
public enum Result {
One( "0001"),
Two( "0010")
...
private String val;
private Result(String val) {
this.val = val;
}
}
我不确定为什么计算结果会返回一个字符串。 我会在这里返回一个int但是......
String resultvalue = calculateResult();
switch (Integer.parseInt(resultvalue)) {
case 0b0001:
case 0b0010:
case 0b0110:
case 0b1010:
case 0b1100:
}
你想要达到的目标是什么? 如果你需要:
那你就不需要枚举了。 只需使用Integer.parseInt()
, Set.contains()
和switch
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.