📜  Java中的 Instant ofEpochSecond() 方法及示例

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

Java中的 Instant ofEpochSecond() 方法及示例

在 Instant 类中,根据传递给它的参数,有两种类型的 EpochSecond() 方法。

ofEpochSecond(长 epochSecond)

用于返回 Instant 实例的Instant类的ofEpochSecond()方法,使用秒作为参数传递给从 1970-01-01T00:00:00Z 的纪元计算的方法。纳秒字段设置为零。

句法:

public static Instant ofEpochSecond(long epochSecond)

参数:此方法只接受一个参数epochSecond ,即从 1970-01-01T00:00:00Z 开始的秒数。

返回值:此方法使用作为参数传递的秒数返回Instant

异常:如果瞬间超过最大或最小瞬间,此方法将引发以下异常DateTimeException

下面的程序说明了 ofEpochSecond() 方法:
方案一:

// Java program to demonstrate
// Instant.ofEpochSecond() method
  
import java.time.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // long epochsecond value
        long epochSecond = 1200000l;
  
        // apply ofEpochSecond method of Instant class
        Instant result
            = Instant.ofEpochSecond(epochSecond);
  
        // print results
        System.out.println("Instant: "
                           + result);
    }
}
输出:
Instant: 1970-01-14T21:20:00Z

ofEpochSecond(long epochSecond, long nanoAdjustment)

用于返回 Instant 实例的Instant类的ofEpochSecond()方法,使用秒作为参数传递给从 1970-01-01T00:00:00Z 的纪元计算的方法,并且秒的纳秒分数也作为参数传递,这将改变秒和纳秒的值,以确保存储的纳秒在 0 到 999、999、999 的范围内。

句法:

public static Instant ofEpochSecond(long epochSecond,
                                    long nanoAdjustment)

参数:此方法接受两个参数epochSecond是从 1970-01-01T00:00:00Z 开始的秒数和nanoAdjustment是对秒数的纳秒调整,正数或负数。

返回值:此方法使用作为参数传递的秒数返回Instant

异常:此方法抛出以下异常:

  • DateTimeException – 如果瞬间超过最大或最小瞬间。
  • ArithmeticException – 如果发生数字溢出。

下面的程序说明了 ofEpochSecond() 方法:
方案一:

// Java program to demonstrate
// Instant.ofEpochSecond() method
  
import java.time.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // long epochsecond value and nanoadjustment value
        long epochSecond = 1200000000l;
        long nanoadjustment = 999999l;
  
        // apply ofEpochSecond method of Instant class
        Instant result
            = Instant.ofEpochSecond(epochSecond,
                                    nanoadjustment);
  
        // print results
        System.out.println("Instant: "
                           + result);
    }
}
输出:
Instant: 2008-01-10T21:20:00.000999999Z

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