Java 8 clock offset() 方法
在本文中,我们将学习如何在 Java 中使用Clock.fixed() 方法来获取时钟上的固定时间点。此方法是 java.time 包 的一部分,主要用于测试目的。它需要两个参数:一个固定的 Instant 和一个 ZoneId(时区)。Clock.fixed() 方法返回一个始终返回固定时间点的时钟,确保时钟的时间保持不变。
问题陈述
鉴于需要使用 Clock.fixed() 方法在特定时区获取固定时间点并显示固定时钟,我们将编写一个实现此任务的程序。输入
Instant: Current time using Instant.now()输出
Time Zone: "Australia/Melbourne"
FixedClock[2019-02-07T09:19:36.449Z,Australia/Melbourne]
使用 Clock.fixed() 方法的步骤
以下是使用 Clock.fixed() 方法的步骤
- 从 java.time 导入必要的类(Instant、ZoneId、Clock)。
- 使用Instant.now()获取当前时间点。
- 使用ZoneId.of()定义时区。
- 通过传递当前时间点和时区,使用Clock.fixed()创建 Clock 实例。
- 使用 toString()显示固定时钟。
演示 Clock.fixed() 的 Java 程序
以下是一个演示 Clock.fixed() 的示例
import java.time.*; public class Demo { public static void main(String[] args) { Instant i = Instant.now(); ZoneId zId = ZoneId.of("Australia/Melbourne"); Clock c = Clock.fixed(i, zId); System.out.println(c.toString()); } }
输出
FixedClock[2019-02-07T09:19:36.449Z,Australia/Melbourne]
代码说明
程序首先使用Instant.now()获取当前时间点。然后,ZoneId.of("Australia/Melbourne") 用于定义时区。Clock.fixed() 方法使用这两个参数调用以创建一个固定时钟。最后,toString() 用于显示固定时钟的详细信息,其中包括日期、时间和时区。输出将始终显示固定时间点和时区。广告