java.util.Date-从日期删除三个月?
问题内容:
我有类型的日期 java.util.Date
我想从中减去三个月。
在API中找不到很多乐趣。
问题答案:
这是普通的 JDK 版本,它需要Calendar
该类作为帮助程序:
Date referenceDate = new Date();
Calendar c = Calendar.getInstance();
c.setTime(referenceDate);
c.add(Calendar.MONTH, -3);
return c.getTime();
但是,由于和类的各种缺点,您应该认真考虑使用 Joda库
。使用Joda,您可以执行以下操作:Date``Calendar
new DateTime().minusMonths(3).toDate();
或者,如果您要从给定日期而不是当前日期中减去:
new DateTime(referenceDate).minusMonths(3).toDate();
Java 8更新: 使用Java 8,您还可以使用新的JSR 310 API(受Joda的启发):
LocalDateTime.from(referenceDate.toInstant()).minusMonths(3);