我不知道为什么eclipse用红色波浪标记switch-case
语句,并且说Syntax error on token "{", SwitchLabels expected after this token
我尝试了以下两个代码并且我收到同样的抱怨。
Code_1
switch (Test.h1.size()) {
int size = Test.h1.size();
case 1:
break;
case 2:
break;
}
CODE_2
switch (Test.h1.size()) {
int size = Test.h1.size();
case size == 1:
break;
case size == 2:
for (int i=1; i<=Test.h1.size()-1; i++) {
for (int j=i+1; j<=Test.h1.size(); j++) {
System.out.println( Test.h1.get(i)+"+"+Test.h1.get(j)+"= "+((Test.h1.get(i))+(Test.h1.get(j))) );
}
}
break;
}
答案 0 :(得分:3)
您的所有代码都需要包含在案例中。你读过文档了吗? http://docs.oracle.com/javase/tutorial/java/nutsandbolts/switch.html
试试这个:
int size = Test.h1.size();
switch (size) {
case 1:
break;
case 2:
....;
}
答案 1 :(得分:2)
要解决代码1中的问题,您只需删除第int size = Test.h1.size();
行。
对于代码2,您应该知道,在Java中,您不能在切换情况下使用布尔表达式。