弄清楚YearMonth实例的最后一天(在LocalDate中) - joda库

时间:2014-07-21 16:21:53

标签: java datetime jodatime

我有一个YearMonth个实例,有一个简单的方法来计算该实例的LocalDate中的最后一天是什么吗?

我知道有一个toLocalDate(int day),但我可能不知道这个月是否有第31天。 当然,我总是可以将代码放在try-catch块中,然后首先尝试使用31,如果失败,请尝试使用30(或2928 2月)。

有更清洁的方式吗?

2 个答案:

答案 0 :(得分:1)

转到下个月的第一天,然后减去一天?

答案 1 :(得分:0)

得到@MartinMilan(在大多数库中工作的标准算法)或者遵循JodaTime库的内置解决方案的答案:

YearMonth ym = YearMonth.now();
LocalDate endOfMonth = ym.toLocalDate(1).dayOfMonth().withMaximumValue();