Мне нужно получить первое число (а org.joda.time.LocalDate
) месяца и последнее. Получить первое тривиально, но получение последнего, похоже, требует некоторой логики, поскольку месяцы имеют разную длину, а продолжительность февраля даже меняется с годами. Есть ли механизм для этого, уже встроенный в JodaTime, или я должен реализовать его самостоятельно?
110
DateTime
типами :)Ответы:
Как насчет:
dayOfMonth()
возвращает,LocalDate.Property
который представляет поле «день месяца» способом, который знает источникLocalDate
.Как оказалось,
withMaximumValue()
метод даже задокументирован, чтобы рекомендовать его для этой конкретной задачи:источник
dt.with(TemporalAdjusters.lastDayOfMonth())
Еще один простой способ:
источник
Старый вопрос, но лучший результат в Google, когда я это искал.
Если кому-то нужен фактический последний день
int
вместо JodaTime, вы можете сделать это:источник
Используя JodaTime, мы можем сделать это:
Как описано здесь, в моем небольшом содержании на github: Util Class JodaTime и java.util.Date с множеством полезных функций.
источник