68

我正在评估将我的项目从使用Joda-Time迁移到Java 8中的java.time 包。在 Joda-Time 中,我大量使用了这个类。我在 java.time 中找不到类似的东西。Interval

有没有可比的班?

4

4 回答 4

53

对不起,JSR-310 中没有与 JodaTime-Interval-class 等效的东西。我怀疑这是否会发生,但项目负责人 Stephen Colebourne 认为至少在他的外部库 Threeten-Extra 的范围内支持它,请参阅此问题

如果您对 JodaTime 感到满意,您应该保留它。并非 JodaTime 中的所有内容都移植到 Java 8(时间间隔不是唯一的问题)。

2014 年 12 月 13 日更新:

Java-8 中的情况没有改变,但您可能还会考虑 Joda-Time 之外的其他外部库。自 v0.9 以来现在包含一个非常简单的间隔类的 Threeten-Extra(请参阅此处 S. Colebourne 的另一个答案)或我的库 Time4J,它自 v2.0 以来提供范围包。

于 2014-03-03T17:11:04.730 回答
28

JDK 8 JSR-310 没有Interval类。间隔的概念被描述以确保图书馆的其余部分可以完成。

ThreeTen -Extra项目托管其他非 JDK 日期时间类,v0.9 包括Interval.

注意:答案于 2014 年 12 月 10 日更新,包括存在Interval于 ThreeTen-Extra 中。

于 2014-03-03T21:42:41.210 回答
15

使用Guava 的Range类。

有关更多详细信息,请参阅https://stackoverflow.com/a/23485533/1214902

于 2015-10-26T18:28:42.763 回答
-6

类 java.time.Duration 可能会为您提供类似的功能。总的来说java 8时间包非常全面灵活

于 2016-01-27T17:42:52.797 回答