間違ったユーザー入力で例外処理を使用するのに助けが必要です。ユーザーを歓迎してからメインメニューに移動するテキストベースのゲームを作成しています。次に、ユーザーにオプションを伝え、ユーザー入力を探します。何らかの理由で、1 または 2 を入力するたびに、「入力が無効です。もう一度やり直してください」と表示され、選択肢に戻ります。どこが間違っているのか正確にはわかりません。誰かが私を助けてくれることを願っています。また、Mismatch Exception もキャッチしません。あなたが助けてくれることを願っています! ありがとう、シャンダン
public static void main(String[] args) {
System.out.println("Welcome to Spec Ops!");
System.out.println("Please state your name:");
Scanner name = new Scanner(System.in);
String Name = name.next();
System.out.println("Hello "+Name);
mainMenu();
}
public static void mainMenu() {
System.out.println("1. Story Mode");
System.out.println("2. Infinant Combat");
Scanner input = new Scanner(System.in);
Object Selection = input.nextInt();
boolean validOption = true;
Integer x;
try {
x = (Integer)Selection;
} catch(ClassCastException cce){
System.out.println("Your input is invalid, please try again");
validOption = false;
} catch(InputMismatchException ime){
System.out.println("Your input is invalid, please try again");
validOption = false;
}
if(validOption) {
System.out.println("Hello!");
}
else {
mainMenu();
}
}
}