0

如何从当前时间戳中减去一个小时?

Calendar c = Calendar.getInstance();
System.out.println("current: "+c.getTime());
4

5 回答 5

7

添加-1Calendar.HOUR属性:

Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.HOUR, -1);

哦!有了Joda Time,你就可以了:

DateTime date = DateTime.now();
DateTime dateOneHourBack = date.minusHours(1);

虽然在这里可能看不到差异,但它是一个比JDK更简单Date和更好的 API。Calendar

于 2013-10-11T05:14:19.250 回答
1

您正在寻找的答案是

cal.add(Calendar.HOUR, -numberOfHours);

numberOfHours您要减去的金额在哪里。

您也可以参考此链接了解更多信息

http://examples.javacodegeeks.com/core-java/util/calendar/add-subtract-hours-from-date-with-calendar/

于 2013-10-11T05:17:57.913 回答
1
Calendar cal = Calendar.getInstance();
cal.add(Calendar.HOUR_OF_DAY, -1);
于 2013-10-11T05:22:06.257 回答
0

添加-1

add(int field,int amount) 根据日历的规则,在给定的日历字段中添加或减去指定的时间量。例如,要从日历的当前时间减去 1 小时,可以通过调用实现:

Calendar cal = Calendar.getInstance();
cal.add(Calendar.HOUR, -1);
于 2013-10-11T05:16:28.033 回答
0

如果要减去,则调用带有负参数的 add() 方法,如果要添加小时,则调用带有正参数的方法。

增加 2 小时,

    calendar.add(Calendar.Hour,2);

减去 3 小时,

    calendar.add(Calendar.Hour,-3);
于 2013-10-11T05:19:28.750 回答