In questo post parleremo di java.util.InputMismatchException e come risolverlo. InputMismatchException viene generato quando si tenta di leggere i token tramite un’istanza di classe Scanner e l’input recuperato non corrisponde al modello per il tipo previsto.
InputMismatchException in Java
La classe Scanner in Java può essere utilizzata per leggere l’input da un file, InputStream, Path o String. Lo scanner interrompe il suo input in token utilizzando un modello di delimitazione, che per impostazione predefinita corrisponde allo spazio bianco. Questi token possono quindi essere convertiti in valori di diversi tipi utilizzando i vari metodi successivi. Ad esempio, alcuni dei metodi successivi nella classe Scanner per leggere l’input successivo del tipo di dati corrispondente sono – nextLong (), nextBoolean (), nextByte (), nextDouble (), nextFloat (), nextInt().
Quando si legge l’input utilizzando una classe Scanner utilizzando uno dei metodi successivi, ma il tipo di input passato non corrisponde al metodo successivo utilizzato per ottenere l’input, viene generata InputMismatchException. Questa eccezione viene generata anche se l’input non è compreso nell’intervallo. Ad esempio, se l’input passato è di tipo String e si tenta di leggerlo utilizzando il metodo nextInt (), viene generata l’InputMismatchException.
Java InputMismatchException Example
Nell’esempio si prende input dall’utente e quindi si visualizza se il numero intero passato è pari o dispari. La classe Scanner viene utilizzata per prendere l’input dell’utente.
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"); } }}
Ora se si passa l’input come qualsiasi altro tipo come String, verrà generata InputMismatchException.
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 e Risoluzione
- gettare Vs lancia la Gestione delle Eccezioni in Java
- Eccezione di Propagazione in Java
- la Gestione delle Eccezioni Con l’Override dei metodi in Java
- Java provare-con-le risorse Con Esempi
- Java Exception Handling Intervista Domande E Risposte
- Come Leggere un File Delimitato in Java
questo è tutto per l’argomento InputMismatchException in Java e Risoluzione. Se manca qualcosa o hai qualcosa da condividere sull’argomento, scrivi un commento.
Si può anche come
- possiamo Ignorare Metodo start() in Java
- Come Ordinare ArrayList di Oggetti in Java
- Clonazione di Oggetti in Java Usando il Metodo clone ()
- Tipo di Casting E il Tipo di Conversione in Java
- Stabile o Instabile Numero Programma Java
- primavera-boot-starter-genitore in Primavera Boot