如果知道某个日期,如何在Java中获取第二天和前一天?例如,假设getBatchDate() = 2014-08-21
。用较少的代码如何获得前一天和第二天?
答案 0 :(得分:2)
使用日历添加值:
Calendar cal = new GregorianCalendar();
cal.setTime(getBatchDate());
cal.add(Calendar.DAY_OF_MONTH, 1);
Date nextDay = cal.getTime();
cal.setTime(getBatchDate());
cal.add(Calendar.DAY_OF_MONTH, -1);
Date prevDay = cal.getTime();
答案 1 :(得分:0)
使用Calendar#add()
方法,其中第一个参数为DATE
,第二个值为1或-1,基于下一天或前一天。
示例代码:
Calendar cal=Calendar.getInstance();
cal.setTime(date); // set the date
//cal.add(Calendar.DATE, 1); // next day
cal.add(Calendar.DATE, -1); // prev day
System.out.println(cal.getTime());
答案 2 :(得分:0)
我会在你的pom中加入Joda DateTime 你可以创建一个DateTime对象,它有一天加减一些方法,实际上非常可靠。
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
<version>2.4</version>
</dependency>