Java時間的加減處理
阿新 • • 發佈:2022-05-13
1 直接加減
採用的是Date型別的資料和Long型別的資料之間的轉換
Date轉換為Long long time = date.getTime(); Long轉換為Date Date date2 = new Date(newTime);
// 把Date型別的日期轉換為Long型別的數字,然後也可以進行上述的時間的加減操作
// 一天 = 24 * 60 * 60 * 1000 =86400000L // 下面演示當前時間加30天 Date date1 = new Date(); long time = date.getTime(); long newTime = time + 30 * 86400000L; Date date2 = new Date(newTime); SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String format = formatter.format(date2);
Java對日期Date類進行加減運算,年月日,時分秒
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date dt = new Date(); System.out.println(sdf.format(dt)); Calendar rightNow = Calendar.getInstance(); rightNow.setTime(dt); // 日期減1年 rightNow.add(Calendar.YEAR, -1); Date dt1 = rightNow.getTime(); String reStr = sdf.format(dt1); System.out.println("日期減1年:" + reStr); // 日期加3個月 rightNow.add(Calendar.MONTH, 3); Date dt2 = rightNow.getTime(); String reStr2 = sdf.format(dt2); System.out.println("日期加3個月:" + reStr2); // 日期加10天 rightNow.add(Calendar.DAY_OF_YEAR, 10); Date dt3 = rightNow.getTime(); String reStr3 = sdf.format(dt3); System.out.println("日期加10天:" + reStr3); // 日期加60秒 rightNow.add(Calendar.SECOND, 60); Date dt4 = rightNow.getTime(); String reStr4 = sdf.format(dt4); System.out.println("日期加60秒:" + reStr4); Date now = new Date(); System.out.println(sdf.format(now)); // 60秒 long time = 60 * 1000; Date afterDate = new Date(now.getTime() + time); System.out.println("60秒後的時間:" + sdf.format(afterDate)); Date beforeDate = new Date(now.getTime() - time); System.out.println("60秒前的時間:" + sdf.format(beforeDate));