如何在Java中使用日期执行算术运算?

And*_*Dev 5 java

可能重复:
如何计算java中的时差?

实际上我想在Java中减去两个日期.我尝试了很多但不能成功.所以任何人都请帮助我.

Date dtStartDate=pCycMan.getStartDate();

Date dtEndDate=pCycMan.getEndDate();
Run Code Online (Sandbox Code Playgroud)

我怎样才能减去这两个日期?

aio*_*obe 6

我该如何减去这两个日期?

您可以像这样得到毫秒的差异:

dtEndDate.getTime() - dtStartDate.getTime()
Run Code Online (Sandbox Code Playgroud)

(getTime返回自1970年1月1日00:00:00 GMT以来的毫秒数.)

然而,对于这种类型的日期算术,Joda时间库,具有适当的持续时间类(Duration)可能是更好的选择.


Mik*_*eck 6

long msDiff = dtEndDate.getTime() - dtStartDate.getTime()
Run Code Online (Sandbox Code Playgroud)

msDiff现在保存两个日期之间的毫秒数差异.随意使用除法和运算符转换为其他单位.