• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
倪殤
博客园    首页    新随笔    联系   管理    订阅  订阅

【问题交流】JAVA 基础 switch 执行顺序的问题

Java code
public class Test_A {
public static void main(String[] args) {
int i=1, j=0;
switch(i) {
case 2:
j+=6;
case 4:
j+=1;
default:
j +=2;
case 0:
j +=4;
}
System.out.println("j="+j);
}
}
打印:j=6;
问: 进入switch后,程序是怎么样运行的(执行机制?),是从上到下一次比较执行还是直接跳到 case 1:那里?

之后想到了另一个问题,将default 后的 case 0 改为 case 1,结果会是怎么样的
Java code
public class Test_A {
public static void main(String[] args) {
int i=1, j=0;
switch(i) {
case 2:
j+=6;
case 4:
j+=1;
default:
j +=2;
case 1:
j +=4;
}
System.out.println("j="+j);
}
}
打印:j=4;
这表明 没有 进入 default 

综上:swtich的运行机制是怎么样的,不是从上到下依次执行 么 还是怎么样的。

posted @ 2017-04-12 16:09  倪殤  阅读(481)  评论(1)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3