簡體   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