本文實例講述了Java使用DateUtils對日期進行數學運算的方法。分享給大家供大家參考,具體如下:
最近在寫數據上傳的程序,需要對Date進行一些數學運算,個人感覺在java中,日期的數學運算還是比較常用的,所以把Date的數學運算都玩了一下。試了一下,發現DateUtils這個工具類對于Date的數學運算非常方便,見代碼吧。
package date;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.apache.commons.lang3.time.DateUtils;
public class DateCalculate {
/**
* 日期格式的運算
* @param args
*/
public static void main(String[] args) {
System.out.println("億速云測試結果:");
Date now = new Date();
SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println("------當前時間--------:" + sd.format(now));
//年: 加、減操作
System.out.println("1年之后:"+sd.format(DateUtils.addYears(now, 1)));
System.out.println("1年之前:"+sd.format(DateUtils.addYears(now, -1)));
//月: 加、減操作
System.out.println("1個月之后:"+sd.format(DateUtils.addMonths(now, 1)));
System.out.println("1個月之前:"+sd.format(DateUtils.addMonths(now, -1)));
//周: 加、減操作
System.out.println("1周之后:"+sd.format(DateUtils.addWeeks(now, 1)));
System.out.println("1周之前:"+sd.format(DateUtils.addWeeks(now, -1)));
//天: 加、減操作
System.out.println("昨天的這個時候:" + sd.format(DateUtils.addDays(now, -1)));
System.out.println("明天的這個時候:" + sd.format(DateUtils.addDays(now, 1)));
//小時: 加、減操作
System.out.println("1小時后:" + sd.format(DateUtils.addHours(now, 1)));
System.out.println("1小時前:" + sd.format(DateUtils.addHours(now, -1)));
//分鐘: 加、減操作
System.out.println("1分鐘之后:"+sd.format(DateUtils.addMinutes(now, 1)));
System.out.println("1分鐘之前:"+sd.format(DateUtils.addMinutes(now, -1)));
//秒: 加、減操作
System.out.println("10秒之后:"+sd.format(DateUtils.addSeconds(now, 10)));
System.out.println("10秒之前:"+sd.format(DateUtils.addSeconds(now, -10)));
//毫秒: 加、減操作
System.out.println("1000毫秒之后:"+sd.format(DateUtils.addMilliseconds(now, 1000)));
System.out.println("1000毫秒之前:"+sd.format(DateUtils.addMilliseconds(now, -1000)));
}
}
運行結果:

注意:代碼中引入了org.apache.commons.lang3.time.DateUtils;,直接運行程序會報錯!讀者可到官網提供的類庫下載地址下載相應的組件,也可點擊此處本站下載。
最終文件的參考目錄結構如下:

PS:這里再為大家推薦幾款關于日期與時間計算的在線工具供大家參考使用:
在線日期/天數計算器:
http://tools.jb51.net/jisuanqi/date_jisuanqi
在線萬年歷日歷:
http://tools.jb51.net/bianmin/wannianli
在線陰歷/陽歷轉換工具:
http://tools.jb51.net/bianmin/yinli2yangli
Unix時間戳(timestamp)轉換工具:
http://tools.jb51.net/code/unixtime
更多關于java相關內容感興趣的讀者可查看本站專題:《java日期與時間操作技巧匯總》、《Java數據結構與算法教程》、《Java操作DOM節點技巧總結》和《Java緩存操作技巧匯總》
希望本文所述對大家java程序設計有所幫助。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。