A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© polarfox17 中级黑马   /  2015-10-25 10:21  /  1285 人查看  /  16 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文


int x =2;
switch(x)
{
        case 1:System.out.println(1);

        case 2:System.out.println(2);

        default:break;

        case 3:System.out.println(3);
}
这段小程序的输出结果是?

16 个回复

倒序浏览
正常情况下,每个case执行结束后,都应该有个break用来跳出,并且default应该放在最后。接下来分析一下你这个程序吧,首先x=2,会进入case 2进行处理,在控制台会输出2,由于没有break语句终结,会接着往下走,进入default内处理,此时遇到break会跳出分支语句。所以,最后结果是在控制台输出2.
回复 使用道具 举报
java还是很有意思
回复 使用道具 举报
顽固派。 发表于 2015-10-25 12:08
正常情况下,每个case执行结束后,都应该有个break用来跳出,并且default应该放在最后。接下来分析一下你这 ...

你可以试一下看看喔
回复 使用道具 举报
polarfox17 发表于 2015-10-25 14:26
你可以试一下看看喔

6666666666666666666666
回复 使用道具 举报
输出2,遇到break跳出
回复 使用道具 举报
就是一个2而已啦。
回复 使用道具 举报
。。。。。。。。。。。。。。
回复 使用道具 举报
NUMONE 中级黑马 2015-10-25 21:35:58
9#
我试了一下,case,default后面不加break,按顺序执行。我记得老师讲的是先执行完所有的case,在执行default啊??
回复 使用道具 举报
gdhyxh 中级黑马 2015-10-26 09:03:01
10#
输出的是2,没有break,但是有default,可以跳出。
回复 使用道具 举报
结果输出为   2
回复 使用道具 举报
NUMONE 中级黑马 2015-10-26 20:06:50
12#
见本人帖子switch语句小结
http://bbs.itheima.com/forum.php ... peid%26typeid%3D563
回复 使用道具 举报
输出2啊
因为case2后边没有break,接着往下执行,下一句就是break了```
回复 使用道具 举报
输出2,case 2没break所以穿透,之后到default,break跳出结束!
回复 使用道具 举报
javac,java这还不知道吗
回复 使用道具 举报
1     ++++++++++++++++++++++++++++++
回复 使用道具 举报
结果是222222222222222222222222222222222222222222222
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马