comment vérifier le type de données de la validité de la saisie de l'utilisateur (Java Scanner classe)

Je suis en train de faire une INTERFACE utilisateur simple qui demande aux utilisateurs d'entrer des double-tapez les chiffres, si leur entrée n'est pas de type double, le programme devrait garder l'impression de l'invite de commandes jusqu'à ce que les entrées de l'utilisateur valide de type double. Mon code ci-dessous n'est pas tout à fait encore, parce que quand un utilisateur tape dans une valide de type double, le programme ne fait rien, à moins que l'utilisateur tape un autre type double numéro. Je suppose que la condition (sc.hasNextDouble()) dans la boucle while consomme de la première entrée valide. Comment remédier à cela? merci beaucoup

Scanner sc = new Scanner(System.in);

System.out.println("Type a double-type number:");
while (!sc.hasNextDouble())
{
    System.out.println("Invalid input\n Type the double-type number:");
    sc.next();
}
userInput = sc.nextDouble();    //need to check the data type?
  • Ne pas faire sc.next.
InformationsquelleAutor TonyGW | 2013-09-15