使用Java8,兩個專門類引入來處理時間差。
• Period - 處理有關基于時間的日期數量。
• Duration - 處理有關基于時間的時間量。
讓我們來看看他們的操作。
選擇使用任何編輯器創建以下java程序在 C:/> JAVA
Java8Tester.java
import java.time.LocalDate;
import java.time.LocalTime;
import java.time.temporal.ChronoUnit;
import java.time.Duration;
import java.time.Period;
public class Java8Tester {
public static void main(String args[]){
Java8Tester java8tester = new Java8Tester();
java8tester.testPeriod();
java8tester.testDuration();
}
public void testPeriod(){
//Get the current date
LocalDate date1 = LocalDate.now();
System.out.println("Current date: " + date1);
//add 1 month to the current date
LocalDate date2 = date1.plus(1, ChronoUnit.MONTHS);
System.out.println("Next month: " + date2);
Period period = Period.between(date2, date1);
System.out.println("Period: " + period);
}
public void testDuration(){
LocalTime time1 = LocalTime.now();
Duration twoHours = Duration.ofHours(2);
LocalTime time2 = time1.plus(twoHours);
Duration duration = 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