ใน Java 9 ofInstant() ได้แนะนำวิธีการแปลง เป็นวิธีการคงที่ของ LocalDate , เวลาท้องถิ่น และ LocalDateTime ชั้นเรียน วิธีการนี้จะแปลง java.time.Instant วัตถุเป็น LocalDate ที่ต้องการเขตเวลาในรูปแบบของ java.time.ZoneId .
ไวยากรณ์
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