Inputmismatchexceptie in Java en resolutie

In dit bericht zullen we bespreken over java.util.Inputmismatchexceptie en hoe het op te lossen. InputMismatchException wordt gegooid wanneer u probeert om tokens te lezen via een Scanner klasse instantie en de input opgehaald niet overeenkomt met het patroon voor het verwachte type.

InputMismatchException in Java

Scannerklasse in Java kan worden gebruikt om invoer uit een bestand, InputStream, pad of String te lezen. Scanner breekt zijn invoer in tokens met behulp van een scheidingsteken patroon, dat standaard overeenkomt met witruimte. Deze tokens kunnen dan worden omgezet in waarden van verschillende types met behulp van de verschillende volgende methoden. Bijvoorbeeld enkele van de volgende methoden in de Scannerklasse voor het lezen van de volgende invoer van het overeenkomstige gegevenstype zijn – nextLong(), nextBoolean(), nextByte(), nextDouble(), nextFloat(), nextInt().

wanneer u invoer leest met behulp van een Scannerklasse met behulp van een van de volgende methoden, maar het type van de doorgegeven invoer komt niet overeen met de volgende methode die wordt gebruikt om de invoer te krijgen, wordt InputMismatchException gegooid. Deze uitzondering wordt ook gegooid als de invoer buiten bereik is. Bijvoorbeeld als de doorgegeven invoer van het type String is en je probeert om het te lezen met behulp van nextint () methode dan wordt de InputMismatchException gegooid.

Java InputMismatchException voorbeeld

in het voorbeeld neem je input van de gebruiker en laat je zien of het doorgegeven geheel getal even of oneven is. Scannerklasse wordt gebruikt om gebruikersinvoer te nemen.

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

als u nu de invoer doorgeeft als een ander type zoals een String, dan zal InputMismatchException worden gegooid.

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 en Resolutie
  • gooien Vs gooit in Java Exception Handling
  • Uitzondering Vermeerdering in Java
  • Exception Handling Met Dwingende Methode in Java
  • Java-proberen-met-middelen Met Voorbeelden
  • Java Exception Handling Interview Vragen En Antwoorden
  • Hoe om te Lezen van een Bestand met Scheidings tekens in Java

Dat is allemaal voor het onderwerp InputMismatchException in Java en Resolutie. Als er iets ontbreekt of u iets te delen over het onderwerp schrijf een reactie.

u kunt ook vinden

  • Can We Override start () Method in Java
  • Sorteer ArrayList van objecten in Java
  • Object Cloning in Java Using clone () Method
  • Type Casting en type conversie in Java
  • stabiel of instabiel aantal Java Program
  • spring-boot-starter-parent in Spring Boot

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.