我有一个开关,在特定情况下我需要做一些特殊的事情,但我仍然希望它们通过 switch 语句的默认情况,因为在那里我有所有情况下通用的功能。处理完特殊情况后,如何强制进入默认情况?
例子:
switch(someVar) {
case "a":
....
//do something peculiar for a
break;
case "b":
...
//do something peculiar for b
break;
default:
...
//common things that all cases should do
}
编辑:目前我只是在每个特殊案例的底部复制粘贴默认值内的行,但这很丑陋。
如果事情必须无条件执行,就应该移出条件:
switch(someVar) {
case "a":
....
//do something peculiar for a
break;
case "b":
...
//do something peculiar for b
break;
}
//common things that all cases should do
或者,提取一个方法:
switch(someVar) {
case "a":
....
//do something peculiar for a
doCommonThings();
break;
case "b":
...
//do something peculiar for b
doCommonThings();
break;
}
如果一个东西在所有情况下都是通用的,它应该发出警告,表明它根本不应该放在开关盒中,而是应该移到外面。
switch(someVar) {
case "a":
....
//do something peculiar for a
break;
case "b":
...
//do something peculiar for b
break;
}
//common things that all cases should do
类似于如果你会做一个 if else
if(isSpecial) {
do X
}
else {
do Y
}
do for both
不
if(isSpecial) {
do X
do for both
}
else {
do Y
do for both
}