切换不改变Java中的状态

aat*_*kan 0 java switch-statement

我试着写代码,这将振荡set_player的状态2之间player1.nameplayer2.name,我已经写了下面的代码val = 0,当它被初始化,在while循环中.set_player似乎永远不会改变状态并保持在player2.name整个时间.任何帮助都会很棒.

switch (val){
                case 0:
                    set_player = player1.name;
                    val = 2;
                case 1:
                    set_player = player1.name;
                    val = 2;
                case 2:
                    set_player = player2.name;
                    val = 1;
            }
Run Code Online (Sandbox Code Playgroud)

Era*_*ran 6

你缺少break语句.case 2如果val为0,1或2 ,则在每种情况之后不会中断,因此set_player最终会被分配 player2.name.

        switch (val){
            case 0:
                set_player = player1.name;
                val = 2;
                break;
            case 1:
                set_player = player1.name;
                val = 2;
                break;
            case 2:
                set_player = player2.name;
                val = 1;
                break;
        }
Run Code Online (Sandbox Code Playgroud)