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();
}
}
Все равно валидатор говорит одно и то же 🤦♂️🤬 Вот чего ему в жизни не хватает???package com.javarush.task.task30.task3008;
// основной класс сервера
public class Server {
public static void main(String[] args) {
}
}