现在在java中增加几天的日期

时间:2014-11-12 07:20:14

标签: java

我需要将日期增加几天。

private Date now = new Date();
private Date result;

public void incrementDate(Integer days) {

    result = 

}

因此,如果天数等于3,我需要在3天内增加now date并将其设置为result

我知道java 8在plusDays类中有LocalDate方法。有没有办法在java 7中实现它。

4 个答案:

答案 0 :(得分:0)

使用Calendar

Calendar cal = Calendar.getInstance ();
cal.setTime (now);

cal.add (Calendar.DATE, days);

加上其他有趣的东西。

答案 1 :(得分:0)

使用Calendar执行此操作:

Calendar cal = new GregorianCalendar();
cal.add(Calendar.DATE,3);
result = cal.getTime()

答案 2 :(得分:0)

我建议您将函数设为静态并传入now。返回Date并使用Calendar。像,

public static Date incrementDate(Date now, int days) {
    Calendar cal = Calendar.getInstance();
    cal.setTime(now);
    cal.add(Calendar.DAY_OF_MONTH, days);
    return cal.getTime();
}

然后测试它

public static void main(String[] args) {
    DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
    Date now = new Date();
    System.out.println(df.format(now));
    System.out.println(df.format(incrementDate(now, 3)));
}

此处(今天)的输出是

2014-11-12
2014-11-15

答案 3 :(得分:0)

试试这段代码:

SimpleDateFormat sdf=new SimpleDateFormat("yyyy/MM/dd");
Calendar cal=Calendar.getInstance();
String today=sdf.format(cal.getTime());
System.out.println(today);
cal.add(Calendar.DATE, 20);
String After=sdf.format(cal.getTime());
System.out.println(After);
Date now = new Date();