📅  最后修改于: 2023-12-03 14:53:53.573000             🧑  作者: Mango
在Java中,我们经常需要在不同的日期和时间表示之间进行转换。Java 8引入了java.time
包,提供了一套全新的日期和时间API,其中包含了用于将本地日期时间转换为即时(Instant)的方法。
在使用java.time
包之前,我们需要先导入它:
import java.time.*;
要将本地日期时间转换为即时,我们可以使用Instant
类的from
方法。
以下是将LocalDateTime
对象转换为Instant
对象的示例代码:
LocalDateTime localDateTime = LocalDateTime.now();
Instant instant = Instant.from(localDateTime);
import java.time.*;
import java.time.format.DateTimeFormatter;
public class LocalDateTimeToInstantExample {
public static void main(String[] args) {
// 获取当前本地日期时间
LocalDateTime localDateTime = LocalDateTime.now();
// 转换为即时
Instant instant = Instant.from(localDateTime);
// 输出结果
System.out.println("LocalDateTime: " + localDateTime);
System.out.println("Instant: " + instant);
}
}
输出:
LocalDateTime: 2021-01-01T00:00:00
Instant: 2021-01-01T00:00:00Z
Instant
类表示的是时间线上的一个瞬时点,使用的是UTC(协调世界时)作为标准时间。它的精确度高于LocalDateTime
,可以用于在不同时区之间进行时间计算和比较。
要注意的是,将本地日期时间转换为即时时,会丢失时区和偏移量信息,只保留纯粹的时间点。