Java中的时钟tickSeconds()方法和示例
Java.time.Clock.tickSeconds(ZoneId zone)方法是 Clock 类的静态方法,它返回一个时钟,该时钟使用最佳可用系统时钟返回整个秒内的当前即时滴答,并且即时区域与作为传递的即时相同范围。
返回的时钟也是不可变的、线程安全的和可序列化的,此方法等效于 tick(system(zone), Duration.ofSeconds(1))。
句法:
public static Clock tickSeconds(ZoneId zone)
参数:此方法需要一个强制参数zone ,它是用于在整秒中舍入时钟瞬间的时区。
返回值:此方法返回一个时钟,该时钟返回整个秒的当前即时滴答声,区域与作为参数传递的区域相同。
例子:
Code:
ZoneId zoneId = ZoneId.of("Asia/Calcutta");
Clock clock = Clock.tickSeconds(zoneId);
System.out.println(clock.instant());
Output:
2018-08-21T20:22:32Z
Explanation::
method tickSeconds() returns the instant
which ticks in a whole Second means
nanosecond field is zero.
下面的程序说明了Java.time.Clock 类的 tickSeconds() 方法:
方案一;当使用 Zone Kolkata 创建时钟并在整秒内打印时钟滴答的瞬间。
// Java program to demonstrate
// tickSeconds() method of Clock class
import java.time.*;
// create class
public class tickSecondsMethodDemo {
// Main method
public static void main(String[] args)
{
// Zone Id with Zone Asia/Calcutta
ZoneId zoneId = ZoneId.of("Asia/Calcutta");
// create a clock which ticks in the whole Second
Clock clock = Clock.tickSeconds(zoneId);
// print instance of clock
System.out.println(clock.instant());
}
}
输出:
2018-08-22T11:27:38Z
程序 2:打印带有欧洲/巴黎区域的时钟的日期和时间以及整秒的时钟滴答声。
// Java program demonstrate
// tickSeconds() method of Clock class
import java.time.*;
// create class
public class tickSecondsMethodDemo {
// Main method
public static void main(String[] args)
{
// Zone Id with Zone Europe/Paris
ZoneId zoneId = ZoneId.of("Europe/Paris");
// create a clock which ticks in the whole Second
Clock clock = Clock.tickSeconds(zoneId);
// get ZonedDateTime object to print time
ZonedDateTime time = clock
.instant()
.atZone(clock.getZone());
// print time variable value
System.out.println("Date and Time :" + time);
}
}
输出:
Date and Time :2018-08-22T13:27:41+02:00[Europe/Paris]
参考:
https://docs.oracle.com/javase/8/docs/api/java Java