java 的Date怎么转Temporal
时间: 2023-05-24 10:05:27 浏览: 858
Java Date格式的转换
在 Java 8 中,我们可以通过使用 `java.time.*` 包来实现 Date 和 Temporal 类型之间的转换。下面是一个简单的示例:
```java
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.ZonedDateTime;
import java.util.Date;
public class DateToTemporalExample {
public static void main(String[] args) {
// 创建一个 Date 对象
Date date = new Date();
// 将 Date 转换为 LocalDateTime 对象
LocalDateTime localDateTime = LocalDateTime.ofInstant(date.toInstant(), ZoneId.systemDefault());
// 将 LocalDateTime 转换为 ZonedDateTime 对象
ZonedDateTime zonedDateTime = localDateTime.atZone(ZoneId.systemDefault());
// 将 ZonedDateTime 转换为 LocalDate 对象
LocalDate localDate = zonedDateTime.toLocalDate();
// 输出结果
System.out.println("Date: " + date);
System.out.println("LocalDateTime: " + localDateTime);
System.out.println("ZonedDateTime: " + zonedDateTime);
System.out.println("LocalDate: " + localDate);
// 将 LocalDate 转换为 Date 对象
Date newDate = Date.from(localDate.atStartOfDay(ZoneId.systemDefault()).toInstant());
// 输出结果
System.out.println("New Date: " + newDate);
}
}
```
在上面的示例中,我们首先将 `Date` 对象转换为 `LocalDateTime` 对象,并将其转换为 `ZonedDateTime` 和 `LocalDate` 对象。然后,我们将 `LocalDate` 对象转换回 `Date` 对象。
阅读全文