赞
踩
switch语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支。
- switch (表达式){
- case 值:
- 语句体1;
- break;
- case 值:
- 语句体2;
- break;
- default:
- 语句体n+1;
- break;
- }
语法关键字讲解:
表达式:(将要配的值)取值为byte、short、int、char。]DK5以后可以是枚举JDK7以后可以是String
cae后面跟的是要和表达式进行比较的值case:(被匹配的值).
break: 表示中断,结束的意思,用来结束switch语句
default: 表示所有情况都不匹配的时候,就执行该处的内容和if语句的else相似.
case后面的值只能是字面量,不能是变量
case给出的值不允许重复
执行流程:
1.首先计算表达式的值
2.依次和case后面的值进行比较] 如果有对应的值就会执行相应的语句,在执行的过程 中,遇到break就会结束。
3.如果所有的case后面的值和表达式的值都不匹配,就会执.行default里面的语句体,然后结束整个switch语句。
代码实现:
- package Testt;
-
- public class Test10 {
- public static void main(String[] args) {
- //1.定义变量
- int number=1;打印输入的是-1
- //如果所有的case后面的值和表达式的值都不匹配,就会执.行default里面的语句体,然后结束整个switch语句。
- // int number01=5;//请重新输入
- //2.根据表达式打印对于的数
- switch (number){
- case 1:
- System.out.println("输入的是-1");
- break;//结束循环
- case 2:
- System.out.println("输入的是-2");
- break;
- case 3:
- System.out.println("输入的是-3");
- break;
- case 4:
- System.out.println("输入的是-4");
- break;
- default:
- System.out.println("请重新输入");
- }
-
- }
- }
switch优化和注意事项
- package Testt;
-
- //switch优化
- public class Test11 {
- public static void main(String[] args) {
- //1.default的位置可以是前可以是后
- //2.case穿透 就是语句体没有break造成的 值为-10 值为-100
- //3.在jdk12以后可以优化case只有一行语句体可以删除后面的break;
- //case 10 -> System.out.println("值为-10");
- int number = 10;
- switch (number) {
- default:
- System.out.println("请重新输入");
- break;
- // case 10 -> System.out.println("值为-10");
- case 10:
- System.out.println("值为-10");
- //break;
- case 100:
- System.out.println("值为-100");
- //break;
- // default:
- // System.out.println("请重新输入");
- }
-
- }
- }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。