Java中的Java Clock tickMinutes() 方法及示例
Java.time.Clock.tickMinutes(ZoneId zone)方法是 Clock 类的静态方法,它使用最佳可用系统时钟返回当前时刻的整分钟计时,并且该时刻的时区与传递的时区相同作为参数。
时钟的纳秒和秒字段设置为零以在整分钟内舍入瞬间。底层时钟是与系统(ZoneId)相同的最佳系统时钟。零或一纳秒的持续时间对基本时钟方法没有影响。这些将返回相同的基本时钟。
返回的时钟也是不可变的、线程安全的和可序列化的,此方法等效于 tick(system(zone), Duration.ofMinutes(1))。
句法:
public static Clock tickMinutes(ZoneId zone)
参数:此方法需要一个强制参数zone ,它是用于在整分钟内对时钟的瞬间进行四舍五入的时区。
返回值:此方法返回一个时钟,以整分钟为单位返回当前即时滴答声
区域与作为参数传递的区域相同。
例子:
Code:
ZoneId zoneId = ZoneId.of("Asia/Calcutta");
Clock clock = Clock.tickMinutes(zoneId);
System.out.println(clock.instant());
Output:
2018-08-21T19:55:00Z
Explanation::
method tickMinutes() returns the instant
which ticks in a whole minute. It means the second
and nanosecond fields are zero, which can be
visualized as the second field is empty in output.
下面的程序说明了Java.time.Clock 类的 tickMinutes() 方法:
程序 1:当使用“亚洲/加尔各答”区域创建时钟时,用于打印整分钟的时钟滴答瞬间。
// Java program to demonstrate
// tickMinutes() method of Clock class
import java.time.*;
// create class
public class GFG {
// 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 whole minute
Clock clock = Clock.tickMinutes(zoneId);
// print instance of clock
System.out.println(clock.instant());
}
}
输出:
2018-08-24T07:51:00Z
程序 2:打印带有“欧洲/巴黎”区域的时钟的日期和时间以及每整分钟的时钟滴答声。
// Java program to demonstrate
// tickMinutes() method of Clock class
import java.time.*;
// create class
public class tickMinutesMethodDemo {
// 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 whole minute
Clock clock = Clock.tickMinutes(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-24T09:52+02:00[Europe/Paris]
参考:
https://docs.oracle.com/javase/8/docs/api/java Java