[java] testez le type d'un entrée
sim
-
choubaka Messages postés 5534 Date d'inscription Statut Modérateur Dernière intervention -
choubaka Messages postés 5534 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
je souhaite, en java, tester le fait que lorsque je demande un entier (int), si l'utilisateur rentre bien un int et pas un string etc ...
merci !
je souhaite, en java, tester le fait que lorsque je demande un entier (int), si l'utilisateur rentre bien un int et pas un string etc ...
merci !
Configuration: Windows 2000 Firefox 2.0.0.14
3 réponses
-
Salut,
Tu fais la saisie dans un String. Par exemple String entree.
try
{
int mon_int Integer.parseInt(entree);
}
catch(NumberFormatException nfe)
{
// Ton_message d'erreur En principe on retourne la valeur mimi d'un int (Integer.MIN_VALUE;)
}
.......
Tu auras cette exception si ce n'est pas un entier, si ce n'est pas numérique, si la valeur dépasse les valeurs minimales et maximales d'un int.
Cordialement,
Dan -
Si tu utilises une classe comme Scanner pour faire un nextInt, celle-ci te renverra une exception InputMismatchException si ce n'est pas un entier. Tu dois aussi pouvoir tester cela avant avec hasNextInt :
public static void main(String...args) { Scanner sc = new Scanner(System.in); System.out.print("Entrez un entier : "); int n; if (sc.hasNextInt()) { n = sc.nextInt(); System.out.println("L'entier est "+n); } else { System.out.println("Ce n'est pas un entier !"); } }La confiance n'exclut pas le contrôle -
Bonjour ...
tu penses que depuis 2008, il cherche encore ??? lol