JODA- Time
JODA- Time 是由 joda.org 开发的 API,它提供了比 java.util 包中的类(如日历、公历、日期等)更好的类和更有效的方法来处理日期和时间。它包含在 Java 8.0 中的 java.time 包中。
要包含,我们需要导入以下内容 -
import java.time.*;
JODA-Time 的基本功能
下面提到了 JODA-Time 的一些功能 −
使用简单的字段访问器,例如 getYear()、getDayofWeek() 和 getDayofYear()
它支持七种不同的日历系统,包括儒略历、伊斯兰历、公历、科普特历、埃塞俄比亚历、佛教历和公历-儒略历。
提供了开发我们自己的日历的选项
它提供了多种计算时间和日期的方法
使用数据库中的时区。该数据库在一年内被个人更新多次。
其方法的执行速度比以前的 Java 7.0 方法更快
提供卓越的性能
其对象无法更改
线程安全
java.time 包中的重要类
DateTime
语法
DateTime dt= new DateTime();
说明
创建一个 datetime 对象,表示由系统时钟确定的当前日期和时间(以毫秒为单位)。它是使用默认时区的 ISO 日历开发的。 JDK 日历的不可变替代品
LocalDate
语法
LocalDate today = LocalDate.now() //使用 now 方法将系统日期提供给 LocalDate 对象。 System.out.println(today) // 2018-08-03 int d = today.getDayOfMonth(); // 03
说明
此类以年-月-日的形式表示日期,可用于表示没有时间和时区的日期。
LocalTime
语法
// 获取当前日期和时间
LocalDateTime dt = LocalTime.now();
System.out.println("%s", dt);
解释
它处理日期和时间而不考虑时区。
设置环境
在 eclipse 中,创建您的 Java 项目
单击此处获取最新的 JodaTime.tar.gz 文件的内容。
在 eclipse 的包资源管理器中找到您的项目,右键单击它,然后选择调用项目。文件夹>新建>库
应将 Joda-time-2.1.jar 复制或拖到新建立的 libs 文件夹中
再次在包资源管理器中,右键单击您的项目,然后选择属性> java build path>libraries>add jars>joda-time-2.1.jar
现在你可以用这个代码测试一下 − -
DateTime test = new DateTime();
基本示例
// Java 程序用于说明
// JODA time 的功能
import org.joda.time.DateTime;
import org.joda.time.LocalDateTime;
public class JodaTime {
public static void main(String[] args) {
DateTime now = new DateTime();
System.out.println("Current Day: " + now.dayOfWeek().getAsText());
System.out.println("Current Month: " + now.monthOfYear().getAsText());
System.out.println("Current Year: " + now.year().getAsText());
System.out.println("Current Year is Leap Year: " + now.year().isLeap());
// 获取当前日期和时间
LocalDateTime dt = LocalDateTime.now();
System.out.println(dt);
}
}
输出
Current Day: Monday Current Month: April Current Year: 2023 Current Year is Leap Year: false 2023-04-06T13:12:16.672
优点
Joda 时间有许多优点,下面提到了其中一些 -
在多个平台上以类似的方式使用 Java
支持更多日历,包括埃塞俄比亚和佛教
性能提升
简单的互操作性 - 在内部,该库采用毫秒瞬间,与 JDK 和其他广泛使用的时间表示使用的时间单位相同。因此,互操作性很简单,并且 Joda-Time 具有内置的 JDK 兼容性。
缺点
需要安装包
需要从 Joda.org 进行更新
为什么使用 JODA-Time?
在 Java 8 之前,日期/时间 API 存在多个设计问题。其中一个问题是日期和 SimpleDateFormatter 类不是线程安全的。
为了解决这个问题,Joda time 使用不可变类来处理日期和时间。日期类不代表实际日期。而是以毫秒精度指定时间瞬间。 Joda time 提供了一个简洁流畅的 API 来处理日期和时间。
结论
Joda time 是广泛使用的日期和时间处理库。在 Java 8 发布之前,它的目的是提供一个直观的 API 来处理日期和时间,并解决 Java 日期/时间 API 中存在的时间设计问题。它需要安装 Joda.org 的软件包和更新。它有很多优点。它支持多种不同类型的日历,如儒略历、伊斯兰历、公历、科普特历、埃塞俄比亚历、佛教历和公历-儒略历。它有许多基本功能,可帮助开发人员在其应用程序中使用它。
相关文章
有用资源
java 参考教程 - 该教程包含有关 java 的更多信息:https://www.cainiaomax.com/java/

