如何为时间戳添加时间?

我需要在arrays中的未知时间添加14分59秒。 我该怎么做呢? 这是我到目前为止:

Date duration = df.parse("0000-00-00 00:14:59"); arrayOpportunity[2] = arrayOpportunity[2] + duration; 

时间没有改变。 谢谢!

我做了我的研究。 我不能粘贴我的整个代码。 但主要是我不想让你读完这一切。 只是寻找一个如何添加两个时间戳的简单答案。

如果您正在谈论java.sql.Timestamp ,它有一个名为setTime的方法。 java.util.Date也有一个setTime方法。

你可能会这样:

 static final Long duration = ((14 * 60) + 59) * 1000; oldTimestamp.setTime(oldTimestamp.getTime() + duration); 

只需使用#getTime()#setTime()添加适当的毫秒数:

 timeStamp.setTime(timeStamp.getTime() + (((14 * 60) + 59)* 1000)); 

如果你想以毫秒计算时间,那么你可以添加

  (((14 * 60) + 59) * 1000) <-- Mili second value of 14 m and 59 sec 

arrayOpportunity[2] = arrayOpportunity[2] + 14*60*1000 + 59*1000;

您拥有的Date对象可能有效,但它实际上并不代表14分59秒,它只代表日历中的特定时间(例如,在1970年1月1日00:14:59的纪元开始后的14分59) 。

如果您只想添加时间,我建议使用Joda Time 。

LocalTime类允许您添加如下持续时间:

 LocalTime timeSum = time.plusMinutes(14).plusSeconds(59);