import java.sql.Date;
/**
* 計算任一時間的下一天
* @author Joson.Liu
* 2014.08.27
*/
public class NextDay {
public static void main(String args[]){
Date now=new Date(System.currentTimeMillis());//獲取當前時間
System.out.println(getNextDay(now));
}
/**
* 計算指定時間的下一天
* @param date 指定時間
* @return 指定時間的下一天
*/
private static Date getNextDay(Date date){
long addTime=1; //計算相關的時間間隔
addTime*=1;
addTime*=24*3600*1000;
Date nextDate=new Date(date.getTime()+addTime); //把時間間隔轉換爲毫秒數
return nextDate;
}
}
亮點:巧妙的利用了JAVA存儲時間的原理。
java.util.Date沒有時區的概念,java.util.Calendar類纔有時區的概念。
java.util.Date類的底層實現是通過一個long型的整型數據來保存時間的,這個值記錄的是任何一個時間距
1970年1月1日0時0分0秒的毫秒數。因此,我們可以利用這個原理來計算下一天時只要在當前時間的毫秒數上
再加上一天的毫秒數就可以得到下一天。這樣就巧妙的避免了月底、年底、閏月等條件的計算。