更新時間:2022-11-09 10:26:13 來源:動力節(jié)點 瀏覽1281次
Java日期計算的方法是什么?大家可以使用Calendar進行日期加減,
代碼示例:
public static String calFullDate(Date date, int yearNum, int monthNum, int dateNum,int hourNum) {
String result = "";
try {
SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Calendar cal = Calendar.getInstance();
cal.setTime(date);
cal.add(Calendar.MONTH, monthNum);
cal.add(Calendar.YEAR, yearNum);
cal.add(Calendar.DATE, dateNum);
cal.add(Calendar.HOUR, hourNum);
result = sd.format(cal.getTime());
} catch (Exception e) {
log.error(e.getMessage(), e);
}
return result;
}
根據(jù)傳入的年、月、日、小時,進行日期處理。
使用下面方式時注意數(shù)字類型:
Date d = new Date();
SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateNew = df.format(new Date(d.getTime() - num * 24 * 60 * 60 * 1000L));
Date date = df.parse(dateNew);
用該方式進行日期計算,注意使用Long(長整型),不然會發(fā)生下面的錯誤,示例:
原意為獲取90天前的日期時間,但是計算出來的日期為10日后,當(dāng)程序繼續(xù)拿結(jié)果日期進行處理,降獲取到不準確的數(shù)據(jù)。
如果計算的日期時間較短,該方法計算值無問題,示例:
計算出15日前的時間,獲取到正常值
相關(guān)閱讀
初級 202925
初級 203221
初級 202629
初級 203743