我java.util.Date在Scala中使用Java的类,想比较一个Date对象和当前时间。我知道我可以使用getTime()计算增量:
java.util.Date
Date
(new java.util.Date()).getTime() - oldDate.getTime()
但是,这仅long代表我几毫秒。有没有更简单,更好的方法来获取时间增量?
long
Date不幸的是,JDK API严重损坏。我建议使用Joda时间库。
Joda Time具有时间间隔的概念:
Interval interval = new Interval(oldTime, new Instant());
编辑:顺便说一句,乔达有两个概念:Interval用于表示两个时刻之间的时间间隔(表示上午8点至上午10点之间的时间),以及Duration表示没有实际时间界限的时间长度(例如表示两个小时!)
Interval
Duration
如果您只关心时间比较,则大多数Date实现(包括JDK)都会实现Comparable接口,该接口可让您使用Comparable.compareTo()
Comparable
Comparable.compareTo()