Java的标准日期和时间类(主要是
java.util.Date和
java.util.Calendar)具有有限的功能,并且存在许多设计问题。
java.util.Date不赞成使用许多构造函数和方法的事实就是这一点。
与Java标准库中提供的API相比,Joda
Time具有更好的思想API。有带或不带时区的时间戳的类,仅容纳日期(年,月,日)或仅一天中的某个时间的类,时段,持续时间和间隔的类,它支持ISO
8601格式(这是标准格式(XML文档中的格式)等等。
在任何项目中,我都会将Joda Time用作我的标准日期和时间库-确实没有理由使用
java.util.Dateand
java.util.Calendar。
请注意,在Java的未来版本中,很可能会包含一个新的日期和时间API,该API看起来很像Joda Time中当前可用的API。参见Project
ThreeTen。
另请参阅为什么选择乔达时间?在Joda Time项目的主页上。
另外,我已经看到有关Joda Time是否属于标准API的冲突信息。是否标准?
不,它不是标准API的一部分。
更新(从评论中复制):
Java 8现在已经发布,它具有一个类似于Joda Time的新日期和时间API(请参阅包java.time)。如果您使用的是Java
8,请使用新的日期和时间API。



