public static String readString() {
    String message = "";
    boolean stroka = true;
    while (stroka) {
        try {
            BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
            message = reader.readLine();
            stroka = false;
        } catch (IOException e) {
            System.out.println("Произошла ошибка при попытке ввода текста. Попробуйте еще раз.");
            stroka = true;
        }
    }
    return message;
}
Валик: Метод readString должен перехватывать IOException, выводить сообщение о некорректном вводе и повторять считывание с консоли. Ну и где он у меня не перехватывает???
public static int readInt() {
    int count = 0;
    boolean num = true;
    while (num) {
        try {
            String stroka = readString();
            count = Integer.parseInt(stroka);
            num = false;
        } catch (NumberFormatException e) {
            System.out.println("Произошла ошибка при попытке ввода числа. Попробуйте еще раз.");
            num = true;
        }
    }
    return count;
}
Валик: Метод readInt должен перехватывать NumberFormatException, выводить сообщение о некорректном вводе и повторять считывание с консоли. Рекомендации от ментора: Программа вывела в консоль (на экран) слишком много данных. Уже делал рекурсией, например так:
public static int readInt() {
    try {
        return Integer.parseInt(readString());
    } catch (NumberFormatException e) {
        System.out.println("Произошла ошибка при попытке ввода числа. Попробуйте еще раз.");
        return readInt();
    }
}
Все равно валидатор говорит одно и то же 🤦‍♂️🤬 Вот чего ему в жизни не хватает???