繁体   English   中英

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

[英]How to Exit a While loop containing a switch - Java

这是针对计算机类的作业。 这超出了老师的要求,所以我不是要你们为我做学校的工作。 我不明白的是如何退出开关和一段时间。 我知道使用中断; 将退出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
}

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

if (upgrade == 0){
    Break;
}

言归正传,但这仍然没有使用开关,我的老师不会对此感到满意。 有什么办法可以同时退出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)

我通常建议不要在选择时完全不使用switch ,但是如果您必须坚持使用它,则可能希望使用label break

WhileLoop: while (timesLeveled > 0) {
    ...
    case n:
        // do stuff
        break WhileLoop;
    ...
}

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM