public class Stepper
{
enum Roman {I,V,X,L,C,M}
public static void main(String... args)
{
int x=7;
int z=2;
Roman r = Roman.X;
do
{
switch(r)
{
case C : r = Roman.L;break;
case X : r = Roman.C;
case L : if(r.ordinal()>2)
{
z += 5;//7,13,19
}
case M : x++;//8,9,10
}
z++;//8,14,20
}
while (x<10);
System.out.println(z); //
}
}
最佳答案
当 r = Roman.C 时,
case C : r = Roman.L;
break;
在 case C 执行中断之后,中断后面紧接着有一个 z++。
你错过了那个。
关于java - 为什么这个 SCJP 程序给出输出 21 但我得到 20?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10979345/