/**
* 日期差天數、小時、分鐘、秒數組
* @param startDate
* @param endDate
* @return
*/
public static long[] getDisTime(Date startDate, Date endDate){
long timesDis = Math.abs(startDate.getTime() - endDate.getTime());
long day = timesDis / (1000 * 60 * 60 * 24);
long hour = timesDis / (1000 * 60 * 60) - day * 24;
long min = timesDis / (1000 * 60) - day * 24 * 60 - hour * 60;
long sec = timesDis / 1000 - day * 24 * 60 * 60 - hour * 60 * 60 - min * 60;
return new long[]{day, hour, min, sec};
}
/**
* 日期差天數
* @param startDate
* @param endDate
* @return
*/
public static long getDisDay(Date startDate, Date endDate){
long[] dis = getDisTime(startDate, endDate);
long day = dis[0];
if (dis[1] > 0 || dis[2] > 0 || dis[3] > 0) {
day += 1;
}
return day;
}
/**
* 獲得幾天前的時間
* @param date
* @param day
* @return
*/
public static Date getDateBefore(Date d,int day){
Calendar now =Calendar.getInstance();
now.setTime(d);
now.set(Calendar.DATE,now.get(Calendar.DATE)-day);
return now.getTime();
}
/**
* 獲得幾天後的時間
* @param date
* @param day
* @return
*/
public static Date getDateAfter(Date d,int day){
Calendar now =Calendar.getInstance();
now.setTime(d);
now.set(Calendar.DATE,now.get(Calendar.DATE)+day);
return now.getTime();
}
複製代碼