Java Date Add Days and Subtract Days
Below is a simple program for Java Date add days and subtract days example.
package com.journaldev.util;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
public class JavaDateAddSubtract {
public static void main(String[] args) {
Date date = new Date();
System.out.println("Today's date: "+date.toString());
//test addDays method
int i=10;
while(i<=50){
Date newDate = addDays(date, i);
System.out.println("Java Date after adding "+i+" days: "+newDate.toString());
i+=10;
}
System.out.println("nn");
//test subtractDays method
i=10;
while(i<=50){
Date newDate = subtractDays(date, i);
System.out.println("Java Date after subtracting "+i+" days: "+newDate.toString());
i+=10;
}
}
/**
* add days to date in java
* @param date
* @param days
* @return
*/
public static Date addDays(Date date, int days) {
GregorianCalendar cal = new GregorianCalendar();
cal.setTime(date);
cal.add(Calendar.DATE, days);
return cal.getTime();
}
/**
* subtract days to date in java
* @param date
* @param days
* @return
*/
public static Date subtractDays(Date date, int days) {
GregorianCalendar cal = new GregorianCalendar();
cal.setTime(date);
cal.add(Calendar.DATE, -days);
return cal.getTime();
}
}
The output of the above program is:
Today's date: Thu Nov 15 11:45:05 PST 2012
Java Date after adding 10 days: Sun Nov 25 11:45:05 PST 2012
Java Date after adding 20 days: Wed Dec 05 11:45:05 PST 2012
Java Date after adding 30 days: Sat Dec 15 11:45:05 PST 2012
Java Date after adding 40 days: Tue Dec 25 11:45:05 PST 2012
Java Date after adding 50 days: Fri Jan 04 11:45:05 PST 2013
Java Date after subtracting 10 days: Mon Nov 05 11:45:05 PST 2012
Java Date after subtracting 20 days: Fri Oct 26 11:45:05 PDT 2012
Java Date after subtracting 30 days: Tue Oct 16 11:45:05 PDT 2012
Java Date after subtracting 40 days: Sat Oct 06 11:45:05 PDT 2012
Java Date after subtracting 50 days: Wed Sep 26 11:45:05 PDT 2012
You can use these utility functions to add days or subtract days to a Java Date object.
Update: Java 8 has introduced Date and Time API that provides utility method to add and subtract days, weeks, months etc. from a given date. You should check it out at Java Date API Tutorial.