小编典典

计算两个 Java 日期实例之间的差异

all

java.util.Date在 Scala 中使用 Java 的类,想比较一个Date对象和当前时间。我知道我可以使用 getTime()
计算增量:

(new java.util.Date()).getTime() - oldDate.getTime()

但是,这只给我留下了long代表毫秒的时间。有没有更简单、更好的方法来获得时间增量?


阅读 112

收藏
2022-03-14

共1个答案

小编典典

不幸的是,JDK DateAPI 被严重破坏了。我推荐使用Joda Time library

Joda Time 有一个时间间隔的概念:

Interval interval = new Interval(oldTime, new Instant());

编辑:顺便说一句,Joda 有两个概念:Interval表示两个时间点之间的时间间隔(表示上午 8 点到上午 10
点之间的时间),以及Duration表示没有实际时间界限的时间长度(例如表示两个小时!)

如果您只关心时间比较,大多数Date实现(包括 JDK
实现)都实现Comparable了允许您使用Comparable.compareTo()

2022-03-14