Java 如何将时间添加到时间戳?

Java 如何将时间添加到时间戳?,java,timestamp,add,Java,Timestamp,Add,我需要在数组中的未知时间上加上14分59秒。我该怎么做?这就是我到目前为止所做的: Date duration = df.parse("0000-00-00 00:14:59"); arrayOpportunity[2] = arrayOpportunity[2] + duration; 时间没有改变。谢谢 我已经做了研究。我不能粘贴我所有的代码。但主要是我不想让你把它全部读完。只是想寻找如何添加两个时间戳的简单答案。如果您谈论的是java.sql.Timestamp,它有一个名为java.

我需要在数组中的未知时间上加上14分59秒。我该怎么做?这就是我到目前为止所做的:

Date duration = df.parse("0000-00-00 00:14:59");

arrayOpportunity[2] = arrayOpportunity[2] + duration;
时间没有改变。谢谢


我已经做了研究。我不能粘贴我所有的代码。但主要是我不想让你把它全部读完。只是想寻找如何添加两个时间戳的简单答案。

如果您谈论的是
java.sql.Timestamp
,它有一个名为
java.util.Date
也有一个
setTime
方法来处理这类事情

你可以这样做:

static final Long duration = ((14 * 60) + 59) * 1000;

oldTimestamp.setTime(oldTimestamp.getTime() + duration);
LocalTime timeSum = time.plusMinutes(14).plusSeconds(59);

只需使用和添加适当的毫秒数:


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


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

如果要以毫秒为单位添加时间,则只需添加即可

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

(((14*60)+59)*1000)如果您只想添加次数,我建议使用

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

static final Long duration = ((14 * 60) + 59) * 1000;

oldTimestamp.setTime(oldTimestamp.getTime() + duration);
LocalTime timeSum = time.plusMinutes(14).plusSeconds(59);

arrayOpportunity[2]
中的对象是什么类型的?它是一个字符串。这就是问题所在吗?很抱歉延迟回复…第一次使用此网站。可能是。您必须将字符串转换为适当的类型,如
Date
,然后在该对象上添加时间。谢谢!我现在更接近了。这就是我所处的位置:System.out.println(arrayOpportunity[2]);阵列机会[2]+=((14*60)+59)*1000);System.out.println(arrayOpportunity[2]);输出:2012-11-15 04:00:00 2012-11-15 04:00:00899000有什么建议吗?请注意,这并没有考虑DST,甚至我们刚才的闰秒。