Таким образом, я получаю застрял этот кусок кода:Как обрабатывать бесконечный цикл, вызванный недействителен входом (InputMismatchException) с помощью сканера
import java.util.InputMismatchException;
import java.util.Scanner;
public class ConsoleReader {
Scanner reader;
public ConsoleReader() {
reader = new Scanner(System.in);
//reader.useDelimiter(System.getProperty("line.separator"));
}
public int readInt(String msg) {
int num = 0;
boolean loop = true;
while (loop) {
try {
System.out.println(msg);
num = reader.nextInt();
loop = false;
} catch (InputMismatchException e) {
System.out.println("Invalid value!");
}
}
return num;
}
}
и вот мой результат:
Вставить целое число:
Недопустимое значение!
Вставьте целое число:
Неверное значение!
...
Рассмотрите возможность избавиться от цикла переменных и num и вместо этого используйте 'while (true) {try {....; return reader.nextInt(); } catch {....}} ' –