我可能得到的任何類型的結果,所以我定義枚舉這樣的java:枚舉聲明中錯誤說錯位的構造
public enum Result
{
1, 2,3, 4,5, 6,7, 8
}
String resultvalue = calculateResult();
switch (Result .valueOf(resultvalue))
{
}
但我在枚舉聲明本身歌廳錯誤說Mispalced構造。
有誰請幫助我
我可能得到的任何類型的結果,所以我定義枚舉這樣的java:枚舉聲明中錯誤說錯位的構造
public enum Result
{
1, 2,3, 4,5, 6,7, 8
}
String resultvalue = calculateResult();
switch (Result .valueOf(resultvalue))
{
}
但我在枚舉聲明本身歌廳錯誤說Mispalced構造。
有誰請幫助我
這些都是不枚舉值有效標識符,基本上是這樣。你需要用一個字母或_作爲它們的前綴。您還需要使標識符具有唯一性 - 目前您已有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
來做。
像往常一樣,你是一流的 – Gajjini 2012-04-13 16:04:22