Java中的 LocalTime toEpochSecond() 方法及示例
LocalTime类的toEpochSecond()方法用于将此 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)