只是为了协议 - 我喜欢java.util.concurrent.TimeUnit那些东西.
Date d1 = ...
Date d2 = ...
long dif = d1.getTime() - d2.getTime();
long days = TimeUnit.MILLISECONDS.toDays(dif);
Run Code Online (Sandbox Code Playgroud)
所以基本上就是morja的答案,但是使用TimeUnit来计算时间.直接在代码中使用24,60等值会违反Java代码约定(它只允许代码中直接使用-1,0和1)并且更难阅读.
编辑我之前的答案仅在一年内有效。
您可以像这样使用毫秒差异:
Date date1 = // some date
Date date2 = // some other date
long difference = date2.getTime() - date1.getTime();
long differenceDays = difference / (1000 * 60 * 60 * 24);
Run Code Online (Sandbox Code Playgroud)
与 timboo 的回答基本相同,只是更短的方式。
| 归档时间: |
|
| 查看次数: |
4205 次 |
| 最近记录: |