Я наткнулся на фрагмент кода, подобный этому:
Timestamp expiryDate = Timestamp.valueOf(dateStr + " " + "23:59:59.000");
Здесь dateStr - строка, введенная пользователем в форме в формате гггг-мм-дд. Теперь поведение Timestamp.valueOf таково, что он преобразует несуществующие даты в соответствующие правильные даты. Скажем с 31 июня 2008 года по 01 июля 2008 года.
Как я могу проверить в Java, действительно ли строка dateStr является действительной датой? Я знаю, что могу выполнить проверку вручную, но я хотел бы знать, есть ли какой-либо метод, уже готовый сделать то же самое.