将java.util.Date递增一天的正确方法是什么。
我在想像这样的东西
Calendar cal = Calendar.getInstance();
cal.setTime(toDate);
cal.add(Calendar.DATE, 1);
toDate = cal.getTime();
它不“感觉”正确。
发布于 2010-09-28 09:44:28
是啊,没错。Java Date API经常感觉是错误的。我建议你试试Joda Time。它应该是这样的:
DateTime startDate = ...
DateTime endDate = startDate.plusDays(1);
或者:
Instant start = ...
Instant end = start.plus(Days.days(1).toStandardDuration());
发布于 2010-09-28 11:38:56
我是这样做的:
Date someDate = new Date(); // Or whatever
Date dayAfter = new Date(someDate.getTime()+(24*60*60*1000));
其中,末尾的数学将一天的秒数转换为毫秒数。
发布于 2017-05-31 14:59:52
如果不能选择Java8或Joda时间,您可以始终选择Apache DateUtils:
DateUtils.addDays(myDate, 1);
https://stackoverflow.com/questions/3809119
复制相似问题