JAVA语法中case语句的特性:

1.case拥有穿透机制, 若case后不写break,如果命中了某个case语句步骤,下面的case结果将会同时执行。建议写完一个case后 针对break的增加与使用

2.Switch匹配一个具体的值

同时在jdk7中拥有了新特性,表达式结果可以是字符串(该方法可以通过查看源码的方式进行学习,jdk7后使用了hash码针对字符串进行判定)

switch示例如下所示


import java.util.Scanner;

public class demo1 {
    public static void main(String[] args) {
        String name = "rabbit";
        String annimal;
        System.out.println("输入动物");
        Scanner scanner = new Scanner(System.in);
        name = scanner.nextLine();
        switch (name) {
            case "rabbit":
                annimal = "兔";
                //如果不加break,当输入rabbit时,annimal最后参数值将会是狗子
                break;
            case "dog":
                annimal = "狗";
                break;
                //默认值default,当什么也没命中时annimal为猫
            default:
                annimal = "猫";
        }
        System.out.println("name值为: " + name + " ,annimal值为: " + annimal);
        //使用scanner时,注意close的关闭功能,避免资源无法释放
        scanner.close();
    }
}

更多推荐

JAVA语法中case语句的特性