求助一个switch语句问题

chuanshuozhongdegege 2013-04-27 01:46:06
假如a=5,b=0;
switch(a-1)
{case 4 b=b+1;
case 3 b=b+2;
}
执行完swich语句后b=?啊,是不是只执行第一个case啊。
...全文
95 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
STEEL-CHINA 2013-04-28
  • 打赏
  • 举报
回复
引用 楼主 chuanshuozhongdegege 的回复:
假如a=5,b=0; switch(a-1) {case 4 b=b+1; case 3 b=b+2; } 执行完swich语句后b=?啊,是不是只执行第一个case啊。
========================= 为什么要执行a-1?不管你出于什么目的,在这里执行总不那么合理。 switch(a) { case 5: case 4: b += 1; break; case 3: b += 2; break; defalut: break; } 写代码规范很重要,写代码逻辑也很重要。
liuyuhua0066 2013-04-27
  • 打赏
  • 举报
回复
加break 加defult
LCore 2013-04-27
  • 打赏
  • 举报
回复
switch(a-1)
	  {case 4: b=b+1;
	   case 3: b=b+2; 
	  }
b=3 不加break的执行情况是 从第一个匹配到的case开始,后面的case都会执行一次
fsh2008 2013-04-27
  • 打赏
  • 举报
回复
case后没有break语句,那么会依次执行,也就是b=3.

51,410

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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