用Java减少日期

Muh*_*riq 11 java datetime utilities date

我希望从当前时间开始前一天(24小时).

例如,如果当前时间是 Date currentTime = new Date();

2011-04-25 12:15:31:562 GMT

如何确定时间即

2011-04-24 12:15:31:562 GMT

anu*_*ava 32

你可以使用Calendar类来做到这一点:

Calendar cal = Calendar.getInstance();
cal.setTime ( date ); // convert your date to Calendar object
int daysToDecrement = -1;
cal.add(Calendar.DATE, daysToDecrement);
date = cal.getTime(); // again get back your date object
Run Code Online (Sandbox Code Playgroud)


Jon*_*eet 10

我会建议你使用乔达时间与启动,这是一个很大更好的API.然后你可以使用:

DateTime yesterday = new DateTime().minusDays(1);
Run Code Online (Sandbox Code Playgroud)

请注意,"昨天的这个时间"并不总是在24小时前...但你需要考虑时区等.你可能想要使用LocalDateTimeInstant代替DateTime.