Essayer d'écrire un programme dans lequel l'utilisateur saisit ses dépenses pour la semaine. Le problème vient du fait que je veux que le programme demande à l'utilisateur si une entrée inacceptable est entrée. J'ai découvert comment détecter les valeurs négatives, mais lorsque j'essaie d'attraper une exception d'incompatibilité d'entrée (si un caractère ou une chaîne est entré), la boucle s'exécute à l'infini en demandant "Monday Expenses:" Comment faire pour que l'utilisateur donné une autre chance de répondre? J'ai essayé une pause; mais cela a éclaté de la faire tout en boucle aussi, que je ne veux pas.Pourquoi est-ce que ça marche quand la boucle tourne à l'infini?
Voici mon code à ce jour:
import java.util.Scanner;
public class BarGraph{
public static void main (String[] args){
Scanner myScanner;
myScanner = new Scanner(System.in);
double mon, tues, wed, thurs, fri, sat, sun;
do{
try{
System.out.print("Expenses for Monday: ");
mon = myScanner.nextDouble();
}catch(Exception e){
mon = -1;
}
}while(mon<0);
System.out.println(mon);
}
}
Merci pour votre aide
Scanner myScanner = nouveau scanner (System.in); vous rendra la vie plus facile que Scanner myScanner; myScanner = // bla bla bla –