Java | switch语句的使用

本文详细介绍了Java中的switch关键字用法,包括支持的类型(如byte、short、int、char、枚举和String),case语句的执行特点以及break关键字的重要性。通过示例代码展示了缺少break时连续执行case的情况,以及switch对String的支持。
摘要由CSDN通过智能技术生成

switch关键字总结

  • 能用于switch判断的类型有:byte、short、int、char(JDK1.6),还有枚举类型,但是在JDK1.7后添加了对String类型的判断
  • case语句中少写了break,编译不会报错,但是会一直执行之后所有case条件下的语句而不再判断,直到default语句
  • 若没有符合条件的case就执行default下的代码块,default并不是必须的,也可以不写

default不是必须的,也可以不写

输出:

case two

    private static void defautTest() {
        char ch = 'A';
        switch (ch) {
        case 'B':
            System.out.println("case one");
            break;
        case 'A':
            System.out.println("case two");
            break;
        case 'C':
            System.out.println("case three");
            break;
        }
    }

case语句中少写了break,编译不会报错
但是会一直执行之后所有case条件下的语句,并不再进行判断,直到default语句
下面的代码输出:

case two
case three

   private static void breakTest() {
        char ch = 'A';
        switch (ch) {
        case 'B':
            System.out.println("case one");

        case 'A':
            System.out.println("case two");

        case 'C':
            System.out.println("case three");
        default:
            break;
        }
    }

 switch用于判断String类型
 输出:

It's OK!

    private static void stringTest() {
        String string = new String("hello");
        switch (string) {
        case "hello":
            System.out.println("It's OK!");
            break;

        default:
            System.out.println("ERROR!");
            break;
        }
    }
}

完整代码

public class SwitchDemo {

    public static void main(String[] args) {
        stringTest();
        breakTest();
        defautTest();
    }

    /*
     * default不是必须的,也可以不写
     * 输出:case two
     */
    private static void defautTest() {
        char ch = 'A';
        switch (ch) {
        case 'B':
            System.out.println("case one");
            break;
        case 'A':
            System.out.println("case two");
            break;
        case 'C':
            System.out.println("case three");
            break;
        }
    }

    /*
     * case语句中少写了break,编译不会报错
     *     但是会一直执行之后所有case条件下的语句,并不再进行判断,直到default语句
     *     下面的代码输出: case two
     *                   case three
     */
    private static void breakTest() {
        char ch = 'A';
        switch (ch) {
        case 'B':
            System.out.println("case one");

        case 'A':
            System.out.println("case two");

        case 'C':
            System.out.println("case three");
        default:
            break;
        }
    }

    /*
     * switch用于判断String类型
     *     输出:It's OK!
     */
    private static void stringTest() {
        String string = new String("hello");
        switch (string) {
        case "hello":
            System.out.println("It's OK!");
            break;

        default:
            System.out.println("ERROR!");
            break;
        }
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值