JAVA基础之流程语句控制:选择结构

来源:互联网 发布:手机淘宝能改差评吗 编辑:程序博客网 时间:2024/05/15 08:30
switch语句:是选择结构的一种标志性语句


switch(表达式) switch意为开关
{
case 取值1: case意为案例,事件
执行语句;
break;        break意为跳出,当匹配答案后,做跳出结束的动作。
case 取值2:
执行语句;
break;
......
default: default意为缺省,默认。
执行语句;
break;
}
比如:*/
int a=5;
switch (a+1)
{
case  3:
System.out.println("你好,鱼儿。");
break;
case 5:
System.out.println("你好,凌晗。");
break;
case 6:
System.out.println("你好,茵茵。");
break;
default:
System.out.println("好久不见。");
}
/*他的运算顺序是:先计算出switch语句后表达式的结果,再进入第一个case进行选择,不是这个答案则忽略进入
第二个case进行选择,还是不对,继续选择下一个,也就是第三个,答案匹配,执行第三个case的执行语句。
执行完毕后break跳出,整个switch选择语句结束。
如果所有的case的答案都不匹配的话就进入default,执行下面的语句,然后break跳出。


注意:switch后面的表达式只支持四种类型
byte short int char
其他类型都简单,单独拿char举个例子吧!
*/
int b=4,c=5;
char sop='*'; //char是字符类型。
switch (sop)
{
case '+':
System.out.println("2015-12-18");
break;
case '-':
System.out.println("2015-12-17");
break;
case '/':
System.out.println("2015-12-16");
break;
case '&':
System.out.println("2015-12-15");
break;
default :
System.out.println("2015-12-14");
break;
}
/*上面供选择的值中没有*这个字符,所以最后会输出default下面的执行语句。


switch语句有个特点,就是当执行这个语句的时候,里面所有的备选答案都加载进内存了,所以
里面的备选答案是无序的,可以随意排列,哪怕将default语句放到第一个备选位置都可以。

但是,他们的执行却是有顺序的,无论default语句在哪个位置,都是率先执行第一个case语句,
最后才是default语句。

了解了switch语句的特点以后,我们同样可以用来做关于星期和季节的练习。
*/
int d=8;
switch (d)
{
case 1:
System.out.println(d+"对应的星期是星期一。");
break;
case 2:
System.out.println(d+"对应的星期是星期二。");
break;
case 3:
System.out.println(d+"对应的星期是星期三。");
break;
case 4:
System.out.println(d+"对应的星期是星期四。");
break;
case 5:
System.out.println(d+"对应的星期是星期五。");
break;
case 6:
System.out.println(d+"对应的星期是星期六。");
break;
case 7:
System.out.println(d+"对应的星期是星期天。");
break;
default:
System.out.println("对不起,输入有误。");
break;
}


//关于季节的表达


int e=3;
switch (e)
{
case 3: //这里答案就匹配了,因为没有执行语句,也没有break跳出,所以程序会自动向下执行。
case 4: //到这里的时候因为上面已经匹配所以不会再做选择,仅仅只是按着顺序执行而已。
case 5://这里也是依次执行。
System.out.println(e+"月是春季。");//继续执行到这里的输出语句。
break;//这里有break,所以程序跳出,结束语句。
case 6://如果上面没有匹配,它会自动判断答案是否正确,不正确也不会在乎有没有执行语句和
case 7://break跳出语句。只会继续向下检查case备选答案是否有匹配。
case 8:
System.out.println(e+"月是夏季。");
break;
case 9:
case 10:
case 11:
System.out.println(e+"月是秋季。");
break;
case 12:
case 1:
case 2:
System.out.println(e+"月是冬季。");
break;
default :
System.out.println("对不起,输入错误。");
break;
}
0 0
原创粉丝点击