Java 如何在switch语句中合并案例?
在我目前正在开发的一个程序中,我使用了switch语句,在许多情况下都会产生相同的结果。我当前代码的相关部分如下所示:Java 如何在switch语句中合并案例?,java,switch-statement,program-flow,Java,Switch Statement,Program Flow,在我目前正在开发的一个程序中,我使用了switch语句,在许多情况下都会产生相同的结果。我当前代码的相关部分如下所示: int[] vinArray = new int[17]; for(int x=0;x<17;x++) { v = vinString.substring(x,x+1); switch(v) { case "A": vinArray[x]=1; break;
int[] vinArray = new int[17];
for(int x=0;x<17;x++)
{
v = vinString.substring(x,x+1);
switch(v)
{
case "A": vinArray[x]=1; break;
case "B": vinArray[x]=1; break;
case "C": vinArray[x]=1; break;
case "D": vinArray[x]=1; break;
case "E": vinArray[x]=1; break;
case "F": vinArray[x]=1; break;
case "G": vinArray[x]=1; break;
case "H": vinArray[x]=1; break;
case "J": vinArray[x]=2; break;
case "K": vinArray[x]=2; break;
case "L": vinArray[x]=2; break;
case "M": vinArray[x]=2; break;
case "N": vinArray[x]=2; break;
}
}
case "A":
case "B":
case "C":
case "D":
vinArray[x]=1;
break;
只需省略案例之间的中断即可:
case "A":
case "B":
case "C": // etc
vinArray[x] = 1;
break;
case "J":
case "K": // etc
vinArray[x] = 2;
break;
只需省略案例之间的中断即可:
case "A":
case "B":
case "C": // etc
vinArray[x] = 1;
break;
case "J":
case "K": // etc
vinArray[x] = 2;
break;
是的,可以这样完成:
int[] vinArray = new int[17];
for(int x=0;x<17;x++)
{
v = vinString.substring(x,x+1);
switch(v)
{
case "A": vinArray[x]=1; break;
case "B": vinArray[x]=1; break;
case "C": vinArray[x]=1; break;
case "D": vinArray[x]=1; break;
case "E": vinArray[x]=1; break;
case "F": vinArray[x]=1; break;
case "G": vinArray[x]=1; break;
case "H": vinArray[x]=1; break;
case "J": vinArray[x]=2; break;
case "K": vinArray[x]=2; break;
case "L": vinArray[x]=2; break;
case "M": vinArray[x]=2; break;
case "N": vinArray[x]=2; break;
}
}
case "A":
case "B":
case "C":
case "D":
vinArray[x]=1;
break;
另外,要小心,你错过了一些;在您的陈述中。是的,可以这样完成:
int[] vinArray = new int[17];
for(int x=0;x<17;x++)
{
v = vinString.substring(x,x+1);
switch(v)
{
case "A": vinArray[x]=1; break;
case "B": vinArray[x]=1; break;
case "C": vinArray[x]=1; break;
case "D": vinArray[x]=1; break;
case "E": vinArray[x]=1; break;
case "F": vinArray[x]=1; break;
case "G": vinArray[x]=1; break;
case "H": vinArray[x]=1; break;
case "J": vinArray[x]=2; break;
case "K": vinArray[x]=2; break;
case "L": vinArray[x]=2; break;
case "M": vinArray[x]=2; break;
case "N": vinArray[x]=2; break;
}
}
case "A":
case "B":
case "C":
case "D":
vinArray[x]=1;
break;
另外,要小心,你错过了一些;在你的陈述中。是的,你可以。我相信其他人也在努力,但在这种情况下,我认为更好的解决方案是
char v = vinString.charAt(x);
if (v >= 'A' && v <= 'H') {
vinArray[x]=1;
} else if (v >= 'J' && v <= 'N') {
vinArray[x]=2;
}
charv=vinString.charAt(x);
如果(v>='A'&&v='J'&&v是的,你可以。我相信其他人正在努力,但在这种情况下,我认为更好的解决方案是
char v = vinString.charAt(x);
if (v >= 'A' && v <= 'H') {
vinArray[x]=1;
} else if (v >= 'J' && v <= 'N') {
vinArray[x]=2;
}
charv=vinString.charAt(x);
如果(v>='A'&&v='J'&&v