java.time 时间日期偏移类
java.time处理本地日期时间偏移的主要类为 java.time.Duration,java.time.Period
;
-
Period - 处理有关基于时间的日期数量。
-
Duration - 处理有关基于时间的时间量。
Duration
Period
使用示例
import java.time.*;
....
//计算两个Temporal对象的时间差
LocalDate date1 = LocalDate.of(1997,1,1);
LocalDate date2 = LocalDate.now();
Period period = Period.between(date1,date2);
System.out.println("date1: "+date1+"\ndate2: "+date2);
System.out.println("Period->years:"+period.getYears()+" months:"+period.getMonths()+" days:"+period.getDays());
LocalTime time1 = LocalTime.of(0,0,0);
LocalTime time2 = LocalTime.now();
System.out.println("time1: "+time1+"\ntime2: "+time2);
Duration duration = Duration.between(time1,time2);
System.out.print("Duration->");
duration.getUnits().forEach( temporalUnit -> System.out.print(temporalUnit+": "+duration.get(temporalUnit)+" ") );
结果如下:
date1: 1997-01-01
date2: 2017-02-28
Period->years:20 months:1 days:27
time1: 00:00
time2: 19:21:16.062
Duration->Seconds: 69676 Nanos: 62000000