java 流程控制语句

择结构switch

switch 条件语句也是一种很常用的选择语句,它和if条件语句不同,它只能针对某个表达式的值作出判断,从而决定程序执行哪一段代码

在判断条件比较多,实现起来代码过长,会不便于阅读时。Java中提供了一种switch语句来实现这种需求,在switch语句中使用switch关键字来描述一个表达式,使用case关键字来描述和表达式结果比较的目标值,当表达式的值和某个目标值匹配时,会执行对应case下的语句。

例如:

switch(用于表示星期的数字) {
    case 1 :
        输出星期一;
        break;
    case 2 :
        输出星期二;
        break;
    case 3 :
        输出星期三
        break;
    case 4 :
         输出星期四;
        break;
    case 5 :
        输出星期五;
        break;
    case 6:
        输出星期六;
        break;
    case 7:
        输出星期天;
        break;
}
 1 上面改写后的伪代码便描述了switch语句的基本语法格式,具体如下:
 2 public class SwitchDemo01 {
 3     public static void main(String[] args) {
 4         int week = 5;
 5     switch (week) {                                                   //表达式的值是5
 6             case 1:                                                   //case的值是1
 7                 System.out.println("星期一");                          //当case与表达式(week)相等时输出
 8                 break;                                                //当case与表达式(week)相等时输出后结束
 9             case 2:                                                   //case的值是2
10                 System.out.println("星期二");                          //当case与表达式(week)相等时输出
11                 break;                                                //当case与表达式(week)相等时输出后结束
12             case 3:                                                   //case的值是3
13                 System.out.println("星期三");                          //当case与表达式(week)相等时输出
14                 break;
15             case 4:                                                   //case的值是4
16                 System.out.println("星期四");                          //当case与表达式(week)相等时输出
17                 break;
18             case 5:                                                   //case的值是5
19                 System.out.println("星期五");                          //当case与表达式(week)相等时输出【已相等】
20                 break;                                                //已相等,结束
21             case 6:                                                   //case的值是6
22                 System.out.println("星期六");
23                 break;                
24             case 7:                                                   //case的值是7
25                 System.out.println("星期天");
26                 break;
27             default:                                                  //如果找不到相等的,找default
28                 System.out.println("输入的数字不正确...");            //输入其他会提示("输入的数字不正确...); 
29            break;
30     }
31   }
32 }

结果:星期五

在使用switch语句的过程中,如果多个case条件后面的执行语句是一样的,则该执行语句只需书写一次即可,这是一种简写的方式。例如,要判断一周中的某一天是否为工作日,同样使用数字1~7来表示星期一到星期天,当输入的数字为1、2、3、4、5时就视为工作日,否则就视为休息日。

例:

 1 public class Pd {
 2     public static void main(String[] args) {
 3         int week = 2;
 4         switch (week) {
 5         case 1:
 6         case 2:
 7         case 3:
 8         case 4:
 9         case 5:
10             // 当 week 满足值 1、2、3、4、5 中任意一个时,处理方式相同
11             System.out.println("今天是工作日");
12             break;
13         case 6:
14         case 7:
15             // 当 week 满足值 6、7 中任意一个时,处理方式相同
16             System.out.println("今天是休息日");
17             break;
18         }
19     }
20 }

结果:今天是工作日

上述代码中,当变量week值为1、2、3、4、5中任意一个值时,处理方式相同,都会打印“今天是工作日”。同理,当变量week值为6、7中任意一个值时,打印“今天是休息日”。

原文地址:https://www.cnblogs.com/ty-v/p/8029339.html