LocalDate计算两个日期相差天数
- JAVA1.8
- 一、Period.between(beginDate, endDate);
- 二、LocalDate.toEpochDay 推荐使用
JAVA1.8
避坑。计算两个日期相差天数,推荐使用第二种
一、Period.between(beginDate, endDate);
// 开始日期
LocalDate beginDate = LocalDate.parse("2021-06-20");
// 结算日期
LocalDate endDate = LocalDate.parse("2021-09-01");
Period next = Period.between(beginDate , endDate );
// 间隔年 0
int days = next.getYears();
// 间隔月 2 不会大于11
int days = next.getMonths();
// 间隔天数 12 不会大于31
int days = next.getDays();
二、LocalDate.toEpochDay 推荐使用
// 开始日期
LocalDate beginDate = LocalDate.parse("2021-06-20");
// 结算日期
LocalDate endDate = LocalDate.parse("2021-09-01");
// 相差天数 73 可直接获取相差天数,但是返回值是Long类型
Long daysbetween = beginDate.toEpochDay() - endDate.toEpochDay();
// 需要计算的话 可自行转换类型,例:
Integer days = daysbetween.intValue();