switch (tag) {
case 2: {
// Do things that need to be done for case 2
if(someCondition){
// if the condition was met, we stop here
// and don't execute case 1!
break;
}
// no break at the end, so we fall through to case 1
}
case 1: {
// do something
break;
}
}
3条答案
按热度按时间mefy6pfw1#
这不是最好的方法,但可以解决你的问题。
zsbz8rwp2#
不,不完全是。你能得到的最接近的东西是一个有条件的失败。
但是这可能会很快变得非常混乱,而且也非常有限,imo更好的解决方案是为每个任务编写一个函数,并且只使用每个case来调用适当的函数。
不,
goto
是一个非常糟糕的想法,不,你甚至不应该考虑使用它;)myzjeezk3#
正如一些人指出的,你可以使用后藤,但这不是一个好主意。
你可以做的,我也在我的代码中有时使用,是省略break;如果你决定这样做,在那里保留一个注解,这样将来你(或你的同事)就不会添加“missing”break;.