原文:http://www.yiibai.com/java8/java8_periodduration.html
使用Java8,两个专门类引入来处理时间差。
Period - 处理有关基于时间的日期数量。
Duration - 处理有关基于时间的时间量。
让我们来看看他们的操作。
选择使用任何编辑器创建以下java程序在 C:/> JAVA
Java8Tester.java
importjava.time.LocalDate;importjava.time.LocalTime;importjava.time.temporal.ChronoUnit;importjava.time.Duration;importjava.time.Period;publicclassJava8Tester{publicstaticvoidmain(Stringargs[]){Java8Testerjava8tester =newJava8Tester();java8tester.testPeriod();java8tester.testDuration();}publicvoidtestPeriod(){//Get the current dateLocalDatedate1 =LocalDate.now();System.out.println("Current date: "+date1);//add 1 month to the current dateLocalDatedate2 =date1.plus(1,ChronoUnit.MONTHS);System.out.println("Next month: "+date2);Periodperiod =Period.between(date2,date1);System.out.println("Period: "+period);}publicvoidtestDuration(){LocalTimetime1 =LocalTime.now();DurationtwoHours =Duration.ofHours(2);LocalTimetime2 =time1.plus(twoHours);Durationduration =Duration.between(time1,time2);System.out.println("Duration: "+duration);}}
验证结果
使用javac编译器编译如下类
C:\JAVA>javac Java8Tester.java
现在运行Java8Tester看到的结果
C:\JAVA>java Java8Tester
看到结果。
Current date: 2014-12-10
Next month: 2015-01-10
Period: P-1M
Duration: PT2H