И снова здравствуйте.
Маленькая программка, получает сканером double от пользователя, обрабатывает и выводит результат.
Дело в том, если пользователь ввёл число с точкой, а не с запятой, появляется "InputMismatchException", пытаюсь его отловить:
int i =0;
do {
try{
System.out.println("Введите число: ");
Double op1 = in.nextDouble();
System.out.println(op1 * op1);
} catch (InputMismatchException e) {
System.err.println("Число введено неверно!");
}
}
while (i == 0);
Программа выполняется кругами и после выведения результата, снова просит пользователя ввести число.
Проблема в том, что если всё-таки возникает исключение, то программа выводит следующее:
Введите число: 1.1
Число введено неверно!
Exception in thread "main" java.util.InputMismatchException
Введите число: at java.util.Scanner.throwFor (Scanner.java: 840)
at java.util.Scanner.next (Scanner.java: 1461)
и т.д.
Как заставить "try/catch" ничего не возвращать?
Просто {return;} пробовал, но он прерывает выполнение программы.