私はプロジェクト (ゲーム) に取り組んでおり、要件の 1 つは、範囲外 (1-8) のオプションを入力した場合、および文字を入力した場合に警告を表示することです。ユーザーが無効な番号を入力すると、メニューが表示され、希望するオプションを再度尋ねられます。文字を入力する場合、プログラムは整数を入力するように求め、再度入力を求める必要があります。これは私がこれまでに持っているものです。範囲外の数値を正しく識別し、メニューを呼び出します。また、文字 (無効な入力) を識別しますが、ユーザーが正しいオプションを入力できるように入力を開きます。両方の条件を確認するにはどうすればよいですか?
ありがとう、タイラー
int userChoice = scnr.nextInt();//<-- use this variable
if (userChoice.hasNextInt() == false)
{
System.out.println("Error: Menu selection must be an integer! Please try again:");
}
// Variable used for storing what the user's main menu choice
if (0 > userChoice || userChoice > 8)
{
System.out.println("Error: Invalid Menu Selection.");
System.out.println("");
System.out.println("Available Actions:");
System.out.println("(1) Print Market Prices");
System.out.println("(2) Print Detailed Statistics");
System.out.println("(3) Buy Some Sheep");
System.out.println("(4) Buy a Guard Dog");
System.out.println("(5) Sell a Sheep");
System.out.println("(6) Sell a Guard Dog");
System.out.println("(7) Enter Night Phase");
System.out.println("(8) Quit");
System.out.println("What would you like to do?");
userChoice = scnr.nextInt();
}