📜  Java中的 LocalDate ofInstant() 方法及示例

📅  最后修改于: 2022-05-13 01:55:18.916000             🧑  作者: Mango

Java中的 LocalDate ofInstant() 方法及示例

Java中LocalDate类的ofInstant(Instant instant, ZoneId zone)方法用于从 Instant 和区域 ID 创建LocalDate的实例。这两个参数被传递给该方法,并在这些参数的基础上创建 LocalDate 的一个实例。 LocalDate 的计算遵循以下步骤。

  1. 区域 ID 和即时用于获取与 UTC/格林威治的偏移量,因为每个实例只能有一个有效的偏移量。
  2. 最后,使用即时和获得的偏移量计算本地日期。

句法:

public static LocalDate 
       ofInstant(Instant instant,
                 ZoneId zone)

参数:此方法接受两个参数:

  • instant :它是 Instant 类型,表示传递给创建日期的瞬间。
  • zone : ZoneId 类型,表示偏移量。

返回值:此方法返回localdate

异常:如果结果超出支持的范围,此方法将引发DateTimeException

注意:此方法仅包含在最新版本的Java中的 LocalDate 类中,因此它可能无法在少数在线编译器中运行。

下面的程序说明了Java中的 ofInstant(Instant instant, ZoneId zone) 方法:
方案一:

// Java program to demonstrate
// LocalDate.ofInstant(
// Instant instant, ZoneId zone) method
  
import java.time.*;
import java.time.temporal.*;
  
public class GFG {
    public static void main(String[] args)
    {
        // Create LocalDate object
        LocalDate localdate
            = LocalDate.ofInstant(
                Instant.now(),
                ZoneId.systemDefault());
  
        // Print full date
        System.out.println("Date: "
                           + localdate);
    }
}
输出:
Date: 2020-05-13

方案二:

// Java program to demonstrate
// LocalDate ofInstant() method
  
import java.time.*;
import java.time.temporal.*;
  
public class GFG {
    public static void main(String[] args)
    {
        // Create LocalDate object
        LocalDate localdate
            = LocalDate.ofInstant(
                Instant.now(),
                ZoneId.systemDefault());
  
        // Print year only
        System.out.println(
            "Year: "
            + localdate.getYear());
    }
}
输出:
Year: 2020

参考:
https://docs.oracle.com/javase/10/docs/api/java Java .time.Instant, Java Java)