下面是我的Java代碼,我想重新顯示它,直到用戶輸入5退出。有任何想法嗎?重新顯示菜單
int x = scan1.nextInt();
switch (x)
{
case 1: addition();
case 2: minus();
case 3: mult();
case 4: division();
case 5: System.exit(0);
}
下面是我的Java代碼,我想重新顯示它,直到用戶輸入5退出。有任何想法嗎?重新顯示菜單
int x = scan1.nextInt();
switch (x)
{
case 1: addition();
case 2: minus();
case 3: mult();
case 4: division();
case 5: System.exit(0);
}
您可以使用while循環。
while (true) {
// showing menu codes here
int x = scan1.nextInt();
switch (x) {
case 1:
addition();
break;
case 2:
minus();
break;
case 3:
mult();
break;
case 4:
division();
break;
case 5:
System.exit(0);
break;
}
}
請注意,您還需要breaks
爲每個case
。
不起作用。它不回到菜單。 –
這是因爲您沒有在循環內打印菜單。 – mszymborski
你沒有顯示你的菜單代碼。像mszymborski建議的那樣將它們放在while塊中。 – hata
這是你想要的代碼示例:
public class StackOverflow {
public static void main(String[] args) {
menu();
}
public static void menu() {
Scanner sc = new Scanner(System.in);
while (true) {
System.out.println("MENU");
// showing menu codes here
int x = sc.nextInt();
switch (x) {
case 1:
//addition();
break;
case 2:
//minus();
break;
case 3:
//mult();
break;
case 4:
//division();
break;
case 5:
System.exit(0);
break;
}
}
}
}
YES THANK YOU :)) –
當然,它的工作原理完美,但有一個小錯誤,我必須找到並修復它,當我第一次按5時,它再次顯示菜單(這不應該)當我第二次按下它時,系統退出。所以我認爲我必須解決這個唯一的問題。 –
這不是你想要的嗎?你能否向我解釋一下你想要什麼? –
如果你需要的只是退出一個連續的提示,你甚至不應該使用無限循環!
A while-loop是您所需要的。看下面的例子:
int input=0;
do{
input = scn.nextInt();
switch(input){
case 1: addition(); break;
case 2: minus(); break;
case 3: mult(); break;
case 4: division(); break;
//Case 5 to exit loop to be shifted to the loop condition
}
}while(input != 5);
那麼這個代碼也可以工作,反正tnx。 –
@ArminAlipour既然你在學習,我認爲你應該被告知好的編碼習慣。無限循環不適合這種情況。記住一個工作代碼並不意味着它是正確的。瞭解我的朋友的正確的事情。 – user3437460
感謝您的建議,我會把它關注,唯一的問題是,我不知道如何使用do-while循環,這是我無法理解的,我花了很多天學習它,但我只是放棄了,因爲我很困惑。但既然你說過了,我會回去嘗試再次學習。 –
你以前用過循環嗎? – mszymborski
我只用while和while循環,而不用do-while。 –
如果將上面的代碼放在無限循環中會發生什麼?它會終止嗎? – mszymborski