大家帮我看下这段代码

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 呢?大家帮忙解释下,谢谢
...全文
103 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
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

23,409

社区成员

发帖
与我相关
我的任务
社区描述
Java 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧