Автор оригинала: Pankaj Kumar.
Иногда, работая над датой Java, нам нужно добавить или вычесть из нее несколько дней. Здесь я привожу пример java для добавления дней к дате java или вычитания дней из объекта даты java.
Дата Java Добавляет Дни и Вычитает дни
Ниже приведен пример простой программы для Java Date add days и вычитания дней.
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("\n\n"); //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(); } }
Результатом приведенной выше программы является:
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
Вы можете использовать эти служебные функции для добавления или вычитания дней в объект даты Java.
Обновление : Java 8 представила API даты и времени, который предоставляет служебный метод для добавления и вычитания дней, недель, месяцев и т.д. Из заданной даты. Вы должны проверить это в Учебнике Java Date API .