InputMismatchException in Java und Auflösung

In diesem Beitrag werden wir über Java diskutieren.util.InputMismatchException und wie man es behebt. InputMismatchException wird ausgelöst, wenn Sie versuchen, Token über eine Scanner-Klasseninstanz zu lesen, und die abgerufene Eingabe nicht mit dem Muster für den erwarteten Typ übereinstimmt.

InputMismatchException in Java

Die Scanner-Klasse in Java kann verwendet werden, um Eingaben aus einer Datei, einem InputStream, einem Pfad oder einer Zeichenfolge zu lesen. Scanner unterteilt seine Eingabe mithilfe eines Trennzeichenmusters in Token, das standardmäßig mit Leerzeichen übereinstimmt. Diese Token können dann mit den verschiedenen next-Methoden in Werte verschiedener Typen umgewandelt werden. Zum Beispiel sind einige der nächsten Methoden in der Scanner-Klasse zum Lesen der nächsten Eingabe des entsprechenden Datentyps – nextLong(), nextBoolean(), nextByte(), nextDouble(), nextFloat(), nextInt() .

Wenn Sie Eingaben mit einer Scannerklasse mit einer der nächsten Methoden lesen, der Typ der übergebenen Eingabe jedoch nicht mit der nächsten Methode zum Abrufen der Eingabe übereinstimmt, wird InputMismatchException ausgelöst. Diese Ausnahme wird auch ausgelöst, wenn die Eingabe außerhalb des Bereichs liegt. Wenn die übergebene Eingabe beispielsweise vom Typ String ist und Sie versuchen, sie mit der nextInt() -Methode zu lesen, wird die InputMismatchException ausgelöst.

Java InputMismatchException Example

Im Beispiel nehmen Sie Eingaben vom Benutzer entgegen und zeigen dann an, ob die übergebene Ganzzahl gerade oder ungerade ist. Scanner Klasse wird verwendet, um Benutzereingaben zu nehmen.

import java.util.Scanner;public class InputMismatchExp { public static void main(String args) { Scanner sc = new Scanner(System.in); System.out.println("Enter a number: "); int i = sc.nextInt(); if(i%2 == 0) { System.out.println("Entered number is even"); }else { System.out.println("Entered number is odd"); } }}

Wenn Sie nun die Eingabe als einen anderen Typ wie String übergeben, wird InputMismatchException ausgelöst.

Enter a number: TwoException in thread "main" java.util.InputMismatchExceptionat java.base/java.util.Scanner.throwFor(Scanner.java:939)at java.base/java.util.Scanner.next(Scanner.java:1594)at java.base/java.util.Scanner.nextInt(Scanner.java:2258)at java.base/java.util.Scanner.nextInt(Scanner.java:2212)at com.knpcode.programs.InputMismatchExp.main(InputMismatchExp.java:10)

How to resolve InputMismatchException

Only way to handle InputMismatchException is to ensure that passed input values are of compatible type.

  • StackOverflowError Vs OutOfMemoryError in Java
  • ClassCastException in Java und Auflösung
  • throw Vs throws in Java Ausnahmebehandlung
  • Ausnahmeausbreitung in Java
  • Ausnahmebehandlung mit Überschreiben der Methode in Java
  • Java try- with-resources With Examples
  • Java Exception Handling Interview Fragen und Antworten
  • Lesen von Dateien mit Trennzeichen in Java

Das ist alles zum Thema InputMismatchException in Java und Auflösung. Wenn etwas fehlt oder Sie etwas zu dem Thema zu teilen haben, schreiben Sie bitte einen Kommentar.

Das könnte Ihnen auch gefallen

  • Können wir die start() -Methode in Java überschreiben
  • So sortieren Sie die ArrayList von Objekten in Java
  • Klonen von Objekten in Java Mit der clone() -Methode
  • Typumwandlung und Typkonvertierung in Java
  • Stabiles oder instabiles Java-Zahlenprogramm
  • spring-boot-Starter-Eltern in Spring Boot

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.