java switch语句

2025-03-24 07:27:24
推荐回答(2个)
回答1:

你的第一个问题:switch语句中的case必须是常量,也就是不能更改的值。在Java中常量需要用final修饰,而没有final修饰的是变量。switch语句本身的选择原理就是当某个变量为某个值时执行某段代码,所以case后面肯定是常量,而不能是变量。

第二个问题:每一段case执行的代码最后必须接一个break来结束选择分支,否则,会自动执行下一个case代码,你这里的代码就必须是:

switch (k) {
            case x:
                System.out.println("0");
                break;
            case Y:
                System.out.println("1");
                break;
            case Y + 1:
                System.out.println("2");
                break;
            }

回答2:

要常量表达式呀,你的x有finall定义的是常量,y就不是了,你得去看下有关的定义了