黑马程序员技术交流社区
标题:
switch的疑问
[打印本页]
作者:
刘家斌
时间:
2014-10-13 00:49
标题:
switch的疑问
class SwitchDemo
{
public static void main(String[] args)
{
int x=6;
switch(x)
{
default:
System.out.println("a");
case 1:
System.out.println("b");
case 2:
System.out.println("c");
case 3:
System.out.println("d");
case 4:
System.out.println("e");
case 5:
System.out.println("f");
}
}
}
复制代码
这段代码为什么输出语句都执行了
作者:
Quasimodo
时间:
2014-10-13 01:24
本帖最后由 Quasimodo 于 2014-10-13 01:26 编辑
先进行判断,因为X=6,所以没有符合的 就会去执行default语句。 执行完以后,如果没有碰到break就会继续往下执行而不再进行判断,每条语句都执行直到碰到break或者}才结束 所以输出语句都会执行
作者:
香草芭芙
时间:
2014-10-13 01:40
x = 6 执行default , case 和 default里没有 break , 全都执行下来了.
作者:
HM2014nuli
时间:
2014-10-13 06:43
楼主你好,你没发现你所有case语句和default都没加break吗?输出自然都是打印语句
作者:
康师傅-蛋黄派
时间:
2014-10-13 08:02
一楼正解
作者:
treanow
时间:
2014-10-13 08:18
case没有break
作者:
无知的xiaopihai
时间:
2014-10-13 08:58
首先你要先明白什么叫做switch()语句,然后看看每条case后面有没有break;语句存在,若是没有就一直往下执行,若是存在break()语句就跳出循环结束。
作者:
jtshawn
时间:
2014-10-13 09:31
没有break
作者:
new999
时间:
2014-10-13 09:38
break;~~~~~
作者:
chenglove1201
时间:
2014-10-13 09:47
没有break就会执行
作者:
weiyi
时间:
2014-10-13 10:05
没有break
作者:
面具猴
时间:
2014-10-13 10:39
语句后面都要加上break;否则其后面的语句就执行了,如果后面的语句还没加break;那它后面的就执行了。总之每个case后都要加break;default 放在最后是其他情况都不满足的时候执行的语句
作者:
run_wind
时间:
2014-10-13 12:00
哥哥,你的break呢。厚颜无耻的贴上我刚写的,我也刚学到这里,嘿嘿
//需求1:利用swicth语句来写一个简易计算器。
//需求2:利用swicth语句写一个季节判断程序。
class switchtest
{
public static void main(String[] args)
{
//简易计算器
char ch='+';
int a=3,b=4;
switch(ch)
{
case '+':
System.out.println(a+"+"+b+"="+(a+b));
break;
case '-':
System.out.println(a+"-"+b+"="+(a-b));
break;
case '*':
System.out.println(a+"*"+b+"="+(a*b));
break;
case '/':
System.out.println(a+"/"+b+"="+(a/b));
break;
default:
System.out.println("Hello World!");
break;
}
//季节判断 3,4,5春季,6,7,8夏季,9,10,11秋季,12,1,2冬季
int x=7;
switch(x)
{
case 3:
case 4:
case 5:
System.out.println(x+"月属于春季");
break;
case 6:
case 7:
case 8:
System.out.println(x+"月属于夏季");
break;
case 9:
case 10:
case 11:
System.out.println(x+"月属于秋季");
break;
case 12:
case 1:
case 2:
System.out.println(x+"月属于冬季");
break;
default:
System.out.println("Hello World!");
break;
}
}
}
复制代码
作者:
戏言丶
时间:
2014-10-13 12:32
楼上的说的都不错,来复习一下
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2