如何退出包含开关的While循环 - Java

Jor*_*ide 1 java while-loop switch-statement

这是针对计算机类的分配.这超出了老师要求的范围,所以我不是要求你们为我的学校工作.我无法理解的是如何退出开关和while.我知道使用休息; 将退出while循环,并使用break; 将退出开关.我正在寻找的是一些将同时退出开关和while循环的代码.我能做的就是使用

if (upgrade == 1){
    // Do Stuff
}

if (upgrade == 2){
    // Do Stuff
}

if (upgrade == 3){
    // Do Stuff
}

if (upgrade == 4){
    // Do Stuff
}

if (upgrade == 0){
    break;    // Exit the while loop
}
Run Code Online (Sandbox Code Playgroud)

但是,老师不希望我们使用该格式,而是使用开关.我还以为我可以添加

if (upgrade == 0){
    Break;
}
Run Code Online (Sandbox Code Playgroud)

在底部,但仍然没有使用开关,我的老师会对它不满意.有没有办法同时退出swtich和while循环?

这就是他希望代码看起来像:

while (timesLeveled > 0){

    System.out.println("Upgrade Stats");

    upgrade = chooseUpgrade();    // retrieves the number for upgrade

    switch (upgrade){
    case 1: 
        // Do stuff if upgrade is 1
        break;


    case 2:
                    // Do stuff if upgrade is 2
        break;


    case 3: 
        // Do stuff if upgrade is 3
        break;

    case 4:
        // Do stuff if upgrade is 4
        break;


    case 0:

        break;

    }   // Closes off Switch

            timesLeveled--; // resets level counter

        }   // Closes off while (timesLeveled)
Run Code Online (Sandbox Code Playgroud)

chr*_*ke- 6

switch当你有选择时,我通常建议不要使用a ,但是如果你必须坚持使用它,你可能想要break带标签.

WhileLoop: while (timesLeveled > 0) {
    ...
    case n:
        // do stuff
        break WhileLoop;
    ...
}
Run Code Online (Sandbox Code Playgroud)

请注意,此用法通常意味着您的代码需要多次重要清理(使用多态替换条件,循环改进等).