此代码
LocalDate date = LocalDate.of(2019, 4, 31);
引发此错误:
java.time.DateTimeException: Invalid date 'APRIL 31'
我需要基于给定的天数构造一个日期,在这种情况下为31,但是由于4月只有30天,因此我得到了例外。在上面的示例中,我应该获得5月1日的信息,这是否可以与java.time
库一起使用还是需要手动编码?
答案 0 :(得分:4)
正如我在评论中提到的,如果您将基本日期加几天,可能会更容易:
LocalDate.of(2019,4,1).plusDays(31);
答案 1 :(得分:3)
如果您确实想这样做,可以尝试使用此方法代替plusDay:
LocalDate.parse("2018-04-31", DateTimeFormatter.ISO_LOCAL_DATE.withResolverStyle(ResolverStyle.LENIENT))