为什么差异是负值?

时间:2018-11-01 13:16:30

标签: java

这个想法是计算将来两次 time2 的差beetwen两次(以毫秒为单位)。结果应该是正值,因为 time2 是将来的版本。错误在哪里?

histograms = list()
for(i in 1:ncol(full_data_noNO)){
histograms[[i]] = qplot(full_data_noNO[,i], geom="histogram", 
    binwidth = 50, fill=I("lightblue"))+
    theme_light()
}

3 个答案:

答案 0 :(得分:3)

由于您要将时间解析为java.util.Date,这是一个以毫秒为单位存储的时间瞬间,因此它只是将日期保留为Thu Jan 01 23:59:00 1970日期,但要花时间。但是new Date()会为您提供当前日期,因此在比较两者时会有很大的不同。

在这种情况下,使用调试器是很好的。

答案 1 :(得分:1)

字符串time2 =“ 23:59:00”; 不是将来的日期。 由于您在此处未设置任何日期成分,而仅使用时间成分,因此默认日期设置为日期成分,即1970年1月1日。

所以 1970年1月1日23:59:00 与新的Date()(当前日期

相比,不是未来的日期

答案 2 :(得分:1)

date2 = sdf.parse(time2)返回一个从1970年1月1日开始的日期对象。

新日期现在可以获取时间

getTime函数获取自1970年1月1日以来的秒数,因此新的Date值将更大。