📜  Java的.time.LocalDateTime类在Java中(1)

📅  最后修改于: 2023-12-03 15:02:05.519000             🧑  作者: Mango

Java的.time.LocalDateTime类在Java中

在Java 8之后,引入了新的时间日期API,其中就包含了LocalDateTime,这是一个表示日期和时间的不可变对象。

创建LocalDateTime对象

要创建一个LocalDateTime对象,可以调用静态的now()方法:

LocalDateTime currentTime = LocalDateTime.now();

也可以手动指定年月日时分秒:

LocalDateTime customDateTime = LocalDateTime.of(2022, 3, 14, 9, 26, 53);
获取LocalDateTime的不同部分

LocalDateTime提供了许多方法,可以从中获取对象的不同部分,例如:

int year = customDateTime.getYear(); // 2022
Month month = customDateTime.getMonth(); // MARCH
int hour = customDateTime.getHour(); // 9

还可以使用新的TemporalField枚举来获取更多的部分:

int dayOfMonth = customDateTime.get(ChronoField.DAY_OF_MONTH); // 14
int minuteOfDay = customDateTime.get(ChronoField.MINUTE_OF_DAY); // 566
固定时间间隔的操作

LocalDateTime还提供了许多方法,可以对时间进行加减、比较等操作,例如:

LocalDateTime futureDateTime = customDateTime.plusDays(3).plusHours(5);

这将创建一个比customDateTime晚3天5小时的新LocalDateTime对象。

日期时间格式化

当把LocalDateTime对象作为输入参数传递到API中时,有时需要将它转换为字符串。可以使用DateTimeFormatter来实现这一点:

DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
String formattedDateTime = customDateTime.format(formatter);
总结

LocalDateTime类提供了Java 8中新的时间日期API的核心功能。它可以方便地创建、操作和格式化日期和时间,并且支持各种日期时间运算,让程序员能够更好地处理日期时间相关的问题。