Java 9 中 ofInstant() 方法的重要性?

javaobject oriented programmingprogramming更新于 2025/8/30 22:04:17

在 Java 9 中,引入了 ofInstant() 方法进行转换。它是 LocalDate、LocalTime 和 LocalDateTime 类的静态方法。此方法将 java.time.Instant 对象转换为需要 java.time.ZoneId 形式的时区的 LocalDate 。

语法

public static LocalTime ofInstant(Instant instant, ZoneId zone)
public static LocalDate ofInstant(Instant instant, ZoneId zone)
public static LocalDateTime ofInstant(Instant instant, ZoneId zone)

示例

import java.time.LocalDate;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.time.Instant;
import java.time.ZoneId;

public class OfInstantMethodTest {
   public static void main(String args[]) {
      Instant instant = Instant.parse("2020-02-05T02:35:15.245Z");
      System.out.println("Instant: " + instant);

      LocalDate ld = LocalDate.ofInstant(instant, ZoneId.of("Asia/Kolkata"));
      System.out.println("LocalDate: " + ld);

      LocalTime lt = LocalTime.ofInstant(instant, ZoneId.of("Asia/Kolkata"));
      System.out.println("LocalTime: " + lt);

      LocalDateTime ldt = LocalDateTime.ofInstant(instant, ZoneId.of("Asia/Kolkata"));
      System.out.println("LocalDateTime: " + ldt);
   }
}

输出

Instant: 2020-02-05T02:35:15.245Z
LocalDate: 2020-02-05
LocalTime: 08:05:15.245
LocalDateTime: 2020-02-05T08:05:15.245

相关文章


有用资源