У меня есть метод ниже, который просит пользователя предоставить дату с клавиатуры, мне нужно расширить свой код, чтобы проверить, действительно ли пользователь ввел данные в формате M / d / yyyy. Если нет, попросите еще раз повторить и исправить введенные данные, как я могу это реализовать?
private static void extracted2(Doctor l1, Patient p1, List<Schedule> lista) {
Scanner sc2 = new Scanner(System.in);
System.out.println("provide data with format M/d/yyyy");
while (true) {
try {
String userinput = sc2.next();
DateTimeFormatter dateFormat = DateTimeFormatter.ofPattern("M/d/yyyy");
LocalDate date = LocalDate.parse(userinput, dateFormat);
Schedule g5 = new Schedule(5, l1, p1, date, false, false);
lista.add(g5);
for (Schedule x : lista) {
System.out.println(x);
}
} catch (DataFormatException e) {
System.out.println("Wrong data " + e.getMessage());
}
}
}