Java操作日期时间,增加减少N年N月N日N周

mac2026-02-19  10

import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; public class ChangeDate { public static void main(String[] args) throws ParseException { String date = "2017-10-31"; System.out.println("增加一年:"); System.out.println(changeYear(date, 1)); System.out.println("减少一年:"); System.out.println(changeYear(date, -1)); System.out.println("增加一个月"); System.out.println(changeMonth(date, 1)); System.out.println("减少两个月"); System.out.println(changeMonth(date, -2)); System.out.println("增加一周"); System.out.println(changeWeek(date, 1)); System.out.println("减少一周"); System.out.println(changeWeek(date, -1)); System.out.println("增加五天"); System.out.println(changeDay(date, 5)); System.out.println("减少十天"); System.out.println(changeDay(date, -10)); } private static String changeYear(String day, int param) throws ParseException { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Date dt = sdf.parse(day); Calendar rightNow = Calendar.getInstance(); rightNow.setTime(dt); rightNow.add(Calendar.YEAR, param); Date date = rightNow.getTime(); return sdf.format(date); } private static String changeMonth(String day, int param) throws ParseException { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Date dt = sdf.parse(day); Calendar rightNow = Calendar.getInstance(); rightNow.setTime(dt); rightNow.add(Calendar.MONTH, param); Date date = rightNow.getTime(); return sdf.format(date); } private static String changeDay(String day, int param) throws ParseException { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Date dt = sdf.parse(day); Calendar rightNow = Calendar.getInstance(); rightNow.setTime(dt); rightNow.add(Calendar.DAY_OF_MONTH, param); Date dt1 = rightNow.getTime(); return sdf.format(dt1); } private static String changeWeek(String day, int param) throws ParseException { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Date dt = sdf.parse(day); Calendar rightNow = Calendar.getInstance(); rightNow.setTime(dt); rightNow.add(Calendar.WEEK_OF_MONTH, param); Date date = rightNow.getTime(); return sdf.format(date); } }

运行结果

最新回复(0)