1
final Date now = new Date();
Calendar c = Calendar.getInstance();
final Calendar cal = Calendar.getInstance();
cal.setTime(now); 
cal.add(Calendar.HOUR_OF_DAY, 3); 
SetTime(c.getTimeInMillis());  

getTimeInMillis 在我拥有它的同时返回。不是+3小时

如何正确地将小时数添加到当前时间?

4

1 回答 1

4

您将 3 小时添加到另一个日历实例。

尝试 :

final Date now = new Date();
final Calendar cal = Calendar.getInstance();
cal.setTime(now); 
cal.add(Calendar.HOUR_OF_DAY, 3); 
SetTime(cal.getTimeInMillis());  

正如 Peter Lawrey 和 Brian Roach 所说,没有必要创建 Date 对象。所以你可以这样做:

final Calendar cal = Calendar.getInstance();
cal.add(Calendar.HOUR_OF_DAY, 3); 
SetTime(cal.getTimeInMillis());  
于 2013-06-16T14:47:29.197 回答