我想做这样的事情:
int i = 0;
switch(difficulty) {
case 1: i++; break;
case 2: i--; break;
default: case 1;
}
Run Code Online (Sandbox Code Playgroud)
这样的事情可能吗?我想防止重复的代码.我知道在这个特定的例子中没有理由这样做,因为重复的代码会很小.我能想出的唯一一件事是[使用开关盒的能力下降]:
switch(difficulty) {
case 2: i--; break;
default:
case 1: i++; break;
}
Run Code Online (Sandbox Code Playgroud)
我宁愿不这样做,因为增加案例数量并在底部有默认值会更有意义.
但是我想知道,如果我这样做,它会搞砸引擎盖下的goto语句吗?特别是,不需要更长的时间来决定使用哪个goto语句,因为数字或乱序?订单在switch语句中是否重要?想象一下,所有案例都有相同的被调用几率,如果你以随机顺序而不是线性顺序将它们放在一起会有意义吗?
[编辑:对于我关于效率的问题,我发现:交换语句的顺序是否重要,简短的答案是否:交换机案例顺序是否会影响速度? Java的交换机是如何工作的?
sp0*_*00m 10
这应该适合您的需求:
switch(difficulty) {
case 2: i--; break;
default: i++; break;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1467 次 |
| 最近记录: |