Vérifiez si l'entrée est un entier en Java
-
Vérifier si l’entrée est un entier en utilisant la méthode
hasNextInt
en Java -
Vérifiez si le nombre est un entier à l’aide du bloc
try...catch
Le problème indique que nous devons vérifier si l’entrée prise en langage Java est un entier.
Vérifier si l’entrée est un entier en utilisant la méthode hasNextInt
en Java
Le System
est une classe qui a des méthodes et des champs statiques. Nous ne pouvons jamais instancier l’objet de celui-ci. L’objet in
est le flux d’entrée standard. Ce flux est déjà ouvert et prêt à fournir des données d’entrée.
Le hasNextMethod
est présent dans la classe Scanner
et renvoie true si le jeton suivant dans cette entrée du scanner peut être évalué comme une valeur int
. La méthode lance IllegalStateException
si l’objet scanner est fermé.
package checkInputIsInt;
import java.util.Scanner;
public class CheckIntegerInput {
public static void main(String[] args) {
System.out.print("Enter the number: ");
Scanner scanner = new Scanner(System.in);
if (scanner.hasNextInt()) {
System.out.println("The number is an integer");
} else {
System.out.println("The number is not an integer");
}
}
}
Dans la première ligne, l’entrée est prise par l’utilisateur à l’aide de l’entrée de la console. Comme le texte saisi est un nombre, le nombre est un entier qui est imprimé.
Enter the number: 1
The number is an integer
Comme le texte entré n’est pas un nombre, l’instruction de condition else est imprimée.
Enter the number: Hi
The number is not an integer
Vérifiez si le nombre est un entier à l’aide du bloc try...catch
Dans le bloc de code ci-dessous, nous utilisons la classe Scanner pour prendre les entrées de l’utilisateur depuis la console. La classe Scanner
a la méthode next
. Il lance NoSuchElementException
si plus aucun jeton n’est disponible et IllegalStateException
si ce scanner est fermé.
public class CheckIntegerInput {
public static void main(String[] args) {
System.out.print("Enter the number : ");
Scanner scanner = new Scanner(System.in);
try {
Integer.parseInt(scanner.next());
System.out.println("The number is an integer");
} catch (NumberFormatException ex) {
System.out.println("The number is not an integer ");
}
}
Le code ci-dessus affichera l’instruction dans le bloc try si le nombre est un entier. Et il exécutera l’instruction présente dans le bloc catch si la méthode lève une Exception
à partir de celui-ci et lance NumberFormatException
si elle est incapable de convertir une chaîne en l’un des types numériques.
La sortie du code ci-dessus est similaire à celle du premier exemple de code ci-dessus.
Rashmi is a professional Software Developer with hands on over varied tech stack. She has been working on Java, Springboot, Microservices, Typescript, MySQL, Graphql and more. She loves to spread knowledge via her writings. She is keen taking up new things and adopt in her career.
LinkedIn