【发布时间】:2015-11-17 13:24:41
【问题描述】:
我想计算不同年份的两个日期之间的差异,以秒为单位。我这样做:
public static int dateDifference(Date d1, Date d2){
return (int) (d2.getTime() - d1.getTime());
}
问题是,例如,当我为这些日期运行此程序时:
d1 = Tue Nov 17 14:18:20 GMT+01:00 2015
d2 = Fri Nov 28 15:37:50 GMT+02:00 2016
结果我得到了-169191300。
但是当年份相同时,我会得到正确的结果,954959013。
有人能解释一下这里发生了什么吗?
【问题讨论】:
-
我建议在 java 8 中查看 joda-time 或
java.time以了解任何与时间相关的操作。