代码中使用到了如下代码:
LocalDateTime.now().getMonth().maxLength()
这里获取的是当前时间所在月的最后一天,之前代码运行是正常的,但是在2021年2月份,报错了,后发现这个maxLength方法获取的是最大天数,得到的是29,但是2021不是闰年,所以发生了报错
API的解释:
public int maxLength()
Gets the maximum length of this month in days.
February has a maximum length of 29 days.
April, June, September and November have 30 days.
All other months have 31 days.
Returns:
the maximum length of this month in days, from 29 to 31
这个可以使用如下方法解决:
LocalDate.now().lengthOfMonth()
API的解释:
public int lengthOfMonth()
Returns the length of the month represented by this date.
This returns the length of the month in days. For example,
a date in January would return 31.
Specified by:
lengthOfMonth in interface ChronoLocalDate
Returns:
the length of the month in days