У меня есть 2 LocalDate
, между которыми я хочу найти разницу:
LocalDate date1 = LocalDate.of(2018,11,30);
LocalDate date2 = LocalDate.of(2019, 5, 1);
Когда я выполняю:
long mthsDiff = ChronoUnit.MONTHS.between(date1, date2);
Возвращает 5, но на самом деле должно быть 6.
Почему ChronoUnit.MONTHS.between
не уважает Half-Open approach
? Не должен ли он вернуться месяц апрель (2019-04-30
)?
Я что-то упустил?
Я понимаю, что второй аргумент является исключительным.
Ниже приведены ожидаемые сценарии:
date1 = 2018-11-16
date2 = 2019-04-15
expect 5
date1 = 2018-11-16
date2 = 2019-04-16
expect 5
date1 = 2018-11-16
date2 = 2019-04-17
expect 6
date1 = 2018-11-16
date2 = 2019-04-15
expect 5