Exception Handling mit falschen Benutzereingaben Java

Ich brauche Hilfe Mit Exception-handling mit Falschen Benutzereingaben. Erstelle ich ein text-basiertes Spiel, begrüßt den Nutzer und geht dann zum Hauptmenü. Dann sagen Sie dem Benutzer die Optionen, und suchen Sie dann für Benutzereingaben. Aus irgendeinem Grund, immer wenn ich Eingang 1 "oder" 2, heißt Es: "Ihre Eingabe ist ungültig, bitte versuchen Sie es erneut" Und geht zurück auf die Entscheidungen. Ich weiß nicht genau, wo ich bin, was falsch läuft, hoffentlich kann mir jemand helfen. Auch, es wird nicht fangen die Diskrepanz Ausnahme. Hoffe, Sie können Helfen! Danke, Shandan

   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();
}

}

}

Irgendein besonderer Grund, warum Sie nicht tun: - int selection = input.nextInt();?

InformationsquelleAutor Shandan Spencer | 2012-12-20

Schreibe einen Kommentar