在实际的业务场景中 , 经常会需要计算两个日期的时间间隔 , 这里介绍两种方式

文本转自 链接

1. 计算两个日期差了多久(天/小时/分)

对于该形式,java8提供了ChronoUnit辅助类,并可以设置时间单位来获取时间差,使用方法如下

1
2
LocalDateTime now = LocalDateTime.now();
System.out.println(ChronoUnit.DAYS.between(now.minusDays(60), now));

2. 算两个日期的差并显示 《X月X日》 的形式

对于该种形式,java8提供了Period辅助类,但是无法精确到秒是个遗憾,使用方法如下

1
2
Period period = Period.between(now.minusDays(60).toLocalDate(), now.toLocalDate());
System.out.println(period.getMonths() + "月" + period.getDays() + "日");