Day 5 switch case 结构和循环结构
5.1 switch case 结构
1. 通用结构:
switch () {
case 常量选择1:
break;
case 常量选择2:
break;
case 常量选择3:
break;
case 常量选择4:
break;
default:
break;
}
2. 执行流程:
当代码运行到switch-case结构时,首先取出switch小括号里变量之前保存的数据,然后匹配switch的大括号内的case选项,找到对应的常量选择,执行对应的处理方式,跳出switch-case结构,如果没有找到对应的常量匹配,则执行default之后的处理方式
【break】 用于结束switch-case运行
3. 注意事项:
(1) 在switch-case结构中,有且只能执行case或者default之后的语句体,如果出现两者之外的代码是无法执行的,对Java而言时无效代码(unreachable code)
(2) 如果在case或者default后的代码中缺少break,则代码会运行到下一个break或者跳出switch-case结构
(3) 在switch-case结构中,不允许出现相同的case选项,不然系统会报错,代码无法进行操作,因为在Java中所有case原则时平级的
(4) 在switch-case结构中,default语句可以省略,它不影响代码的编译,也没有任何的语法错误,但是会缺失一种异常处理方式,而且在AJCG阿里巴巴Java开发规范中,不推荐省略default
4. 总结:
(1) switch-case结构和if-else if结构类似,是可以互通的
(2) if-else if结构适用于范围类的条件判定,区间更广泛
(3) switch-case结构是针对于某个常量的选择判定,更具有针对性
import java.util.Scanner;
class Demo1 {
public static void main(String[] args) {
int choose = 0;
Scanner sc = new Scanner(System.in);
System.out.println("欢迎来到米其林12星餐厅");
System.out.println("1. 北京烤鸭");
System.out.println("2. 重庆/四川火锅");
System.out.println("3. 擀面皮");
System.out.println("4. 烤羊排");
System.out.println("5. 佛跳墙(God Use VPN)");
choose = sc.nextInt();
switch (choose) {
case 1:
System.out.println("北京烤鸭 82RMB");
break;
case 2:
System.out.println("重庆/四川火锅 188RMB");
break;
case 3:
System.out.println(