Java日期增量

时间:2015-06-04 07:42:23

标签: java date

我正在试图弄清楚如何在JAVA中增加日期。

我尝试增加的日期是 2012-10-01

以下代表增量:

  • 2012-10-01 - 2013-09-30
  • 2013-10-01 - 2014-09-30
  • 2014-10-01 - 2015-09-30
  • 2015-10-01 - 2016-09-30

4 个答案:

答案 0 :(得分:2)

使用新的Java时间API,您可以使用LocalDate:

LocalDate date = LocalDate.parse("2012-10-01");

for (int i = 0; i < 4; i++) {
  System.out.println(date + " - " + date.plusYears(1).minusDays(1));
  date = date.plusYears(1);
}

答案 1 :(得分:1)

请试试这个,

  Calendar c = Calendar.getInstance();
  c.setTime(randomDate);
  c.add(Calendar.YEAR, n);
  newDate = c.getTime();

It is here

答案 2 :(得分:0)

使用以下代码

import java.util.Calendar;
import java.text.SimpleDateFormat;

public class HelloWorld {
  public static void main(String[] args) {

    Calendar cal = Calendar.getInstance();
    SimpleDateFormat dateformat = new SimpleDateFormat("yyyy-MM-dd");
    cal.set(Calendar.YEAR, 2010);
    cal.set(Calendar.MONTH,9); //Month start with 0=> Jan 
    cal.set(Calendar.DATE,01);
    System.out.println(dateformat.format(cal.getTime()));
        cal.add(Calendar.YEAR,1);
        cal.add(Calendar.DATE,-1);
        System.out.println(dateformat.format(cal.getTime()));


 } 
}

答案 3 :(得分:0)

如何使用joda-time.jar e.g

public static String getTargetDate(String date)
{
    DateTime dt = new DateTime(date);
    DateTime dt2 = dt.plusYears(1);
    dt2 = dt2.minusDays(1);
    return dt2.toString().substring(0, 10);
}