Java switch语句 - 行为混乱

时间:2015-12-10 13:20:01

标签: java switch-statement

对于下面的代码,打印出10和98

int i = 10;
switch(i){
    default:
        System.out.println(100);
    case 10:
        System.out.println(10);
    case 98:
        System.out.println(98);
}

我不明白为什么案例98中的代码在案例与比较值10不匹配时执行的原因。对我来说,这不是很容易理解。有人可以向我解释一下吗?
非常感谢你。

1 个答案:

答案 0 :(得分:5)

如果你没有在每个案例的结尾处放置一个休息时间,那么案例之后的所有案例都将与i的值相匹配。

switch(i){
    case 10:
        System.out.println(10);
        break;
    case 98:
        System.out.println(98);
        break;
    default:
        System.out.println(100);
}