ユーザーに整数の入力を求めていますが、(オプションへの参照として)適切な整数を入力しない場合は、入力するまでプロンプトを再度表示したいと思います。
これまでのところ、これは私が持っているコードです:
int logIn = 0;
do {
logIn = Integer.parseInt(JOptionPane.showInputDialog(null,
"Please:"
+ "\n(Enter number value of option you would like to choose.)\n"
+ "\n1. Log In \n2. Register"));
} while (1 > logIn || logIn < 2);
int custIndex;
if (logIn == 1) {
custIndex = recommend.getCustomerIndex();
} else {
customers.printCustomers();
custIndex = customers.readCustomers().size();
}
int options = 0;
do {
options = Integer.parseInt(JOptionPane.showInputDialog(null,
"Would you like to:"
+ "\n(Enter number value of option you would like to choose.)\n"
+ "\n1. See your recommendations. \n2. See top rated books."
+ "\n3. See random books of the day. \n4. Exit."));
} while (1 > options || options < 4);
唯一の問題は、アプリケーションがログインを正しく通過できないことです。ユーザーが1を入力すると、プロンプトが再度表示されます。また、ユーザーが2より大きい数値を入力すると、何があっても2番目のオプションに移動します。
どんな助けでもいただければ幸いです。