为什么是下面的代码:
class swi
{
public static void main(String[] args)
{
int a=98;
switch(a)
{
default:{ System.out.println("default");continue;}
case 'b':{ System.out.println(a); continue;}
case 'a':{ System.out.println(a);}
}
System.out.println("Switch Completed");
}
}
给出错误:
continue outside of loop
最佳答案
失败是 switch 语句的标准行为,因此,在 switch 语句中使用 continue 是没有意义的。 continue 语句仅用于 for/while/do..while 循环。
根据我对你的意图的理解,你可能想写:
System.out.println("default");
if ( (a == 'a') || (a == 'b') ){
System.out.println(a);
}
我还建议您将默认条件放在最后。
编辑: 不能在 switch 语句中使用 continue 语句并不完全正确。一个(最好有标签的)continue 语句是完全有效的。例如:
public class Main {
public static void main(String[] args) {
loop:
for (int i=0; i<10; i++) {
switch (i) {
case 1:
case 3:
case 5:
case 7:
case 9:
continue loop;
}
System.out.println(i);
}
}
}
这将产生以下输出: 0 2个 4个 6个 8
关于java - 为什么我不能在 Java 的 switch 语句中使用 'continue'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2521721/