java.time中的类是否与Joda-Time Interval相当?

时间:2014-03-03 15:30:22

标签: java-8 jodatime java-time

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

是否有类似的课程?

4 个答案:

答案 0 :(得分:43)

很抱歉,JSR-310与JodaTime-Interval-class没有对应关系。我怀疑这是否会发生,但项目负责人Stephen Colebourne认为至少在他的外部库Threeten-Extra的范围内支持它,请参阅issue

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

2014-12-13更新:

Java-8中的情况没有改变,但您可能还会考虑除Joda-Time之外的其他外部库。 Threeten-Extra现在包括一个非常简单的间隔类,自v0.9(参见S. Colebourne的另一个答案)或我的库Time4J,它自v2.0开始提供the range package

答案 1 :(得分:27)

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

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

注意:答案更新时间为2014-12-10,以便在ThreeTen-Extra中包含Interval

答案 2 :(得分:10)

使用Guava的Range课程。

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

答案 3 :(得分:-6)

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