📌  相关文章
📜  Java中的 LocalTime toEpochSecond() 方法及示例

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

Java中的 LocalTime toEpochSecond() 方法及示例

LocalTimetoEpochSecond()方法用于将此 LocalTime 转换为自 1970-01-01T00:00:00Z 纪元以来的秒数。该方法将此本地时间与作为参数传递的指定日期和偏移量相结合,以计算纪元秒值,即从 1970-01-01T00:00:00Z 开始经过的秒数。纪元之后时间线上的瞬间是正的,更早的是负的。

句法:

public long 
         toEpochSecond(LocalDate date,
                          ZoneOffset offset)

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

  • date:将用于纪元秒计算的日期作为目标日期。
  • offset:区域偏移量。

返回值:此方法返回自 1970-01-01T00:00:00Z 纪元以来的秒数。它可能是负面的。

下面的程序说明了 toEpochSecond() 方法:

方案一:

// Java program to demonstrate
// LocalTime.toEpochSecond() method
  
import java.time.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // create a LocalDate object
        LocalDate date
            = LocalDate.parse("2018-12-29");
  
        // create a LocalTime object
        LocalTime time
            = LocalTime.parse("20:12:32");
  
        // print Instant
        System.out.println("LocalDate: " + date);
  
        // create ZoneId
        ZoneOffset zone = ZoneOffset.of("Z");
  
        // print ZoneId
        System.out.println("ZoneOffset: " + zone);
  
        // apply ofInstant()
        long value = time.toEpochSecond(date, zone);
  
        // print result
        System.out.println("Epoch Second: "
                           + value);
    }
}
输出:
LocalDate: 2018-12-29
ZoneOffset: Z
Epoch Second: 1546114352

方案二:

// Java program to demonstrate
// LocalTime.toEpochSecond() method
  
import java.time.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // create a LocalDate object
        LocalDate date
            = LocalDate.parse("1909-04-18");
  
        // create a LocalTime object
        LocalTime time
            = LocalTime.parse("00:10:09");
  
        // print Instant
        System.out.println("LocalDate: " + date);
  
        // create ZoneId
        ZoneOffset zone = ZoneOffset.of("Z");
  
        // print ZoneId
        System.out.println("ZoneOffset: " + zone);
  
        // apply ofInstant()
        long value = time.toEpochSecond(date, zone);
  
        // print result
        System.out.println("Epoch Second: "
                           + value);
    }
}
输出:
LocalDate: 1909-04-18
ZoneOffset: Z
Epoch Second: -1915746591

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