私は無限再帰に問題があります。メインメソッドが実行され、1を選択すると、サブメニュー()に移動します。しかし、サブメニュー()で間違ったオプションを選択した場合、プログラムはmainメソッドにループバックする必要があります。どのようにJava(スタックオーバーフロー)で無限再帰を解決するには?
ただし、スタックオーバーフローが発生する可能性があります。
この問題に関連するアイディアがありますか?どのようにmain()を呼び出さずにmainメソッドにループバックできますか?
ありがとうございます。
public void main() {
// variables omitted
while (menu) {
switch (option) {
case 1:
subMenu();
break;
}
}
}
public void subMenu() {
switch (a) {
case 1:
case 2:
default:
System.out.println("Invalid Option");
main();
}
}
ソリューションを見てみましょう。 –
あなたはすでにメインメニューの中にメニューを持っています。 main()の代わりに が返されますか? –
サブメニューメソッドが値を返すことを考慮してください。ブール値と同じくらい単純な値にすることもできます。そうでない場合は、whileループを続行します。 –