问题
只是想弄清楚如何在Java switch语句中使用多个案例。这是我正在尝试做的一个例子:
switch (variable)
{
case 5..100:
doSomething();
break;
}
与必须做的:
switch (variable)
{
case 5:
case 6:
etc.
case 100:
doSomething();
break;
}
任何想法,如果这可能,或什么是一个好的选择?
#1 热门回答(64 赞)
可悲的是,这在Java中是不可能的。你将不得不求助于使用if-else语句。
#2 热门回答(58 赞)
第二种选择完全没问题。我不确定为什么响应者说不可能。这很好,我一直这样做:
switch (variable)
{
case 5:
case 6:
etc.
case 100:
doSomething();
break;
}
#3 热门回答(42 赞)
也许不像之前的一些答案那么优雅,但是如果你想要实现几个大范围的开关箱,只需事先将范围组合到一个箱子中:
// make a switch variable so as not to change the original value
int switchVariable = variable;
//combine range 1-100 to one single case in switch
if(1 <= variable && variable <=100)
switchVariable = 1;
switch (switchVariable)
{
case 0:
break;
case 1:
// range 1-100
doSomething();
break;
case 101:
doSomethingElse();
break;
etc.
}