大家帮我看下这段代码

q403666704 2011-08-22 10:31:30
int i = 1, j = -1;
switch (i) {
case 0:
j = 1;
case 1:
j = 1;
case 2:
j = 2;
default:
j = 0;
}
System.out.println("j=" + j);

What is the result?
为什么结果老是 0 呢?大家帮忙解释下,谢谢
...全文
79 点赞 收藏 4
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
wcskk 2011-08-23
int i = 1, j = -1;
switch (i) {
case 0:
j = 1;
break;
case 1:
j = 1;
break;
case 2:
j = 2;
break;
default:
j = 0;
}
System.out.println("j=" + j);

按以上的试试!
回复
anhy 2011-08-22
在每个case后都需要一个break,否则永远要走到default:j = 0;,也就是说最后j一直是0
回复
达达拉 2011-08-22
每个case 后面需要增加一个 break,要不每个都执行一次,最后一次就是 default里面的
回复
亲努力啊 2011-08-22
break
回复
相关推荐
发帖
非技术区
创建于2007-09-28

2.3w+

社区成员

Java 非技术区
申请成为版主
帖子事件
创建了帖子
2011-08-22 10:31
社区公告
暂无公告