我编写了这个switch语句:
int up = 1;
switch(up){
case 1:
//some methods get called - if statement with break
up = 0;
case 0:
//some methods get called - if statement with break
up = 1;
}
我对代码的期望: 它应该从案例1运行到案例0,然后运行到案例1到案例0,依此类推,直到我调用break;。
实际发生的事情: 案例1和案例2运行一次,不再重复。
怎么了?
答案 0 :(得分:2)
您错误地将loops中使用的break
误认为switch statements中使用的break
。
int up = 1;
DO_WHILE_LOOP : do{
switch(up){
case 1:
up = 0;
if (yourCondition) break DO_WHILE_LOOP; break;
case 0:
up = 1;
if (yourCondition) break DO_WHILE_LOOP; break;
}
} while (true);
这是一种方法。
您正在使用DoWhile循环进行循环并测试yourCondition
。如果已填写,则您break
DO_WHILE_LOOP
{我们给我们的名字"无限循环"
循环是无限的,直到条件被填满。
信息:
没有DO_WHILE_LOOP
注释的简单中断就可以了。但为清楚起见,我认为这是最好的。