Java流程控制05:Switch选择结构

Switch选择结构

  • 多选择结构还有一个实现方式就是switch case语句

  • switch case语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支

  • 语法:

    switch (/*表达式*/){
                
                //当表达式的值与下列case对应的value相等时,便会执行相应的语句
                
                case value1:
                    // 语句1
                    break; // 可选
                case value2:
                    // 语句2
                    break; // 可选
                case value3:
                    // 语句3
                    break; // 可选
                default: // 可选
                    // 语句4
            }
    
  • switch语句中的变量类型可以是:

    1. byte,short,int或者char
    2. 从Java SE 7 开始,switch支持字符串String类型了
    3. 同时case标签必须为字符串常量或字面量

运行机制

  • switch语句括号中的表达式的值会依次与case的标签进行比较,若相匹配,则执行该语句,若该语句中不含break语句,则将剩余所有语句执行完,直到遇到break
  • 若switch语句未能在case标签中找到与表达式相匹配的值,则执行default中的语句

实例演示

代码1:


		char grade = 'C';		

		switch (grade){
            case 'A':
                System.out.println("优秀");
                break;
            case 'B':
                System.out.println("良好");
                break;
            case 'C': // 匹配成功,执行该case下的语句
                System.out.println("及格");
                // 未设置break断点,故之后的代码将继续执行
            case 'D':
                System.out.println("不及格");
                // 未设置break断点,故之后的代码将继续执行
            default:
                System.out.println("成绩未知");
        }

演示:

及格
不及格
成绩未知

代码2:

		String name = "小明";

        switch (name){
            case "小张":
                System.out.println("我是小张");
                break;
            case "小王":
                System.out.println("我是小王");
                break;
            case "小李":
                System.out.println("我是小李");
                break;
            case "小陈":
                System.out.println("我是小陈");
                break;
            // 因为所有的case标签都不匹配,所以直接执行default语句
            default:
                System.out.println("查无此人");
        }

演示:

查无此人
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值