Sometimes while working on Java Date, we need to add or subtract some days from it. Here I am providing java example to add days to java date or subtract days to java date object.
Java Date Add Days and Subtract Days
Below is a simple program for Java Date add days and subtract days example.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
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:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
<span style="color: #008000;"><strong><code> 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 </code></strong></span> |
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.