У меня есть следующий фрагмент кода, где я пытаюсь заставить пользователя вводить только целые числа; если строка введена, тогда будет отображаться сообщение об ошибке системы «Пожалуйста, введите только цифры», а затем снова появится «Введите свой номер ID:». Я попытался использовать метод try/catch, но не использовал его правильно - новичок. Я знаю, что могу использовать «NumberFormatException
», но не знаю, где. Может ли кто-нибудь помочь? Благодаря!Использование Try/Catch в JAVA
//Get Customer ID and Account Number
do
{ System.out.print("Enter your ID#: ");
custid = Integer.parseInt(input.readLine());
System.out.print("Enter your Account Number#: ");
custacctnum = Integer.parseInt(input.readLine());
//validate the choice
for(int i=0; i<people.length; i++)
{ if ((people[i].custid == custid) && (people[i].custacctnum == custacctnum))
{ match = true;
System.out.println("Welcome " +people[i].firstname+ " to JJ Dealership!");
for(int p=0; p<cluster.length; p++)
System.out.println(+(p+1)+ ": " +cluster[p].year+"," +cluster[p].make+ "," +cluster[p].model);
System.out.println(people[i].firstname+ ", what color car would you like?");
break;
}
}
if (!match)
{ System.out.println("Invalid ID");
} while (!(match));
Вы смотрели на (https://docs.oracle.com/javase/7/docs/api/java/util/Scanner.html#hasNextInt)() метод [hasNextInt()]? Я предполагаю, что вы используете сканер для ввода. – csmckelvey
@jenayasslisa вы используете сканер или буферчик? –
@KickButtowski Я использую BufferedReader – jenayaalisa