Как проверить, находится ли объект LocalTime до полуночиJAVA

Программисты JAVA общаются здесь
Anonymous
Как проверить, находится ли объект LocalTime до полуночи

Сообщение Anonymous »

Я пытаюсь определить, наступает ли определенное местное время до полуночи. В основном я хочу знать, переносится ли время начала/окончания смены на следующий день. Например, если смена была запланирована на 23:00–07:00, то это будет считаться переходом на следующий день, поскольку время окончания — после полуночи, а время начала — раньше.
Я начал реализовывать это, проверяя, наступает ли время начала до полуночи, и проверяя, наступает ли время окончания после полуночи. Это соответствует критериям перекрытия следующего дня.
В Java мой код выглядит так

Код: Выделить всё

public boolean checkTime() {

final LocalTime startTime = LocalTime.parse("23:00");
final LocalTime endTime = LocalTime.parse("07:00");

return startTime.isBefore(LocalTime.MIDNIGHT) //false
&& endTime.isAfter(LocalTime.MIDNIGHT)) //true;
}
Почему он возвращает false, если время начала не ранее полуночи? Разве время 23:00 не за час до полуночи? Я ожидаю, что это вернет истину. Может я чего-то не понимаю? Я работаю с LocalTimes и не использую LocalDateTimes

Подробнее: https://stackoverflow.com/questions/762 ... e-midnight

Вернуться в «JAVA»