java基础语法之选择结构switch语句

switch语句的格式

        switch(表达式) {
              case 值1:
                语句体1;
                break;
                case 值2:
                语句体2;
                break;
                …
                default:    
                语句体n+1;
                break;
        }

执行流程
    * 先计算表达式的值
    * 然后和case后面的匹配,如果有就执行对应的语句,否则执行default控制的语句

import  java.util.Scanner;
class demo{
    public static void main(String[] args){
        // 给定一个值,确定今天星期几。1代表星期一。2代表星期二,以此类推
        Scanner s = new Scanner(System.in);
        System.out.println("请输入一个数字");
        int i = s.nextInt();
        switch (i){
            case 1:
            System.out.println("今天是星期一");
            break;
            case 2:
                System.out.println("今天是星期二");
                break;
            case 3:
                System.out.println("今天是星期三");
                break;
            case 4:
                System.out.println("今天是星期四");
                break;
            case 5:
                System.out.println("今天是星期五");
                break;
            case 6:
                System.out.println("今天是星期六");
                break;
            case 7:
                System.out.println("今天是星期天");
                break;
            default:
                System.out.println("请输入1到7 的数字");
                break;
        }
    }


}
--------------------------------------------------------
请输入一个数字
3
今天是星期三

注意:

    a:case后面只能是常量,不能是变量,而且,多个case后面的值不能出现相同的
    * b:default可以省略吗?
        
* 可以省略,但是不建议,因为它的作用是对不正确的情况给出提示。
   break可以省略吗?
 
      省略,会出现一个现象:case穿透。
    default一定要在最后吗?
        *
不是,可以在任意位置。但是建议在最后。
    switch语句的结束条件
        
* a:遇到break就结束了
        * b:执行到switch的右大括号就结束了

表达式可以接受什么样子的数据类型

int类型,或者是可以自动提升为int类型的基本数据类型,byte short char 

枚举,字符串

猜你喜欢

转载自blog.csdn.net/weixin_44462792/article/details/86322896