欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Java基础学习笔记 - Day03 - 第三章 选择语句

程序员文章站 2022-04-15 19:05:07
Java基础学习笔记 - Day03 - 第三章 选择语句Java基础学习笔记 - Day03 - 第三章 选择语句3.1 选择语句 - switch3.2 case的穿透性Java基础学习笔记 - Day03 - 第三章 选择语句系统:Win103.1 选择语句 - switchswitch语句格式:switch (表达式) { case 常量值1: 语句体1; break; case 常量值2: 语句体2;...

Java基础学习笔记 - Day03 - 第三章 选择语句

系统:Win10

3.1 选择语句 - switch

  • switch语句格式:
switch (表达式) {
    case 常量值1:
        语句体1;
        break;
    case 常量值2:
        语句体2;
        break;
    ...
    default:
        语句体n+1;
        break;
}
  • 执行流程
    • 首先计算出表达式的值
    • 其次,和case依次比较,一旦有对应的值,就会执行相应的语句,在执行的过程中,遇到break就会结束
    • 最后,如果所有的case都和表达式的值不匹配,就会执行default语句体部分,然后程序结束掉
      Java基础学习笔记 - Day03 - 第三章 选择语句
public static void main(String[] args){
    // 定义变量,判断是星期几
    int weekday = 3;
    // switch语句实现
    switch (weekday) {
        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("这是无效的天数!");
            break;
    }
}

switch后面的小括号当中只能是下列数据类型
基本数据类型:byte、short、char、int
引用数据类型:String字符串、enum枚举

3.2 case的穿透性

在switch语句中,如果case的后面不写break,将会出现穿透现象,也就是不会在判断下一个case的值,直接向后运行,直到遇到break,或者整体switch结束

public static void main(String[] args){
    int i = 2;
    switch (i) {
        case 1:
            System.out.println("执行case1");
            break;
        case 2:
            System.out.println("执行case2");
        case 3:
            System.out.println("执行case3");
        case 4:
            System.out.println("执行case4");
            break;
        case 5:
            System.out.println("执行case5");
            break;
        default :
            System.out.println("执行default");
            break;
    }
}

上述程序中,执行case2后,由于没有break语句,程序会一直往后走,不会再判断case,直到遇到case4内的break
Java基础学习笔记 - Day03 - 第三章 选择语句
由于case存在穿透性,因此初学者在编写switch语句时,必须要写上break

本文地址:https://blog.csdn.net/qq_35132089/article/details/107889610