La clase Java Clock es parte de la API de fecha y hora, java.time.Clock, de Java. La API de fecha y hora de Java se agregó desde la versión 8 de Java.
El método offset() es un método estático de la clase Clock que devuelve un reloj con un instante igual a la suma de los instantes del reloj pasados como parámetro y una duración de Offset específica . Si la duración añadida es positiva, el reloj devuelto representa el instante del reloj más tarde por la duración especificada del reloj base. Si la duración añadida es negativa, el reloj devuelto es anterior a la fecha y la hora del reloj base. Una duración de cero no hace nada al reloj base y devuelve el reloj base.
Si el reloj base es inmutable, seguro para subprocesos y serializable, el reloj devuelto también es inmutable, seguro para subprocesos y serializable.
Sintaxis:
public static Clock offset(Clock baseClock, Duration offsetDuration)
Parámetros: Este método acepta dos parámetros obligatorios:
- baseclock : un reloj para agregar duración. No puede ser un valor nulo.
- offsetDuration : duración para agregar con baseClock. No puede ser un valor nulo también.
Valor de Retorno: Este método devuelve un reloj con un instante igual a la suma de los instantes del reloj pasados como parámetro y la duración del Offset Específico.
Los siguientes programas ilustran el método offset (Clock baseClock, Duration offsetDuration) de la clase java.time.Clock:
Programa 1: Cuando el desplazamiento se pasa como horas.
// Java program to demonstrate offset() // method of Clock class import java.time.*; // create class public class offsetMethodDemo { // Main method public static void main(String[] args) { // base Clock with default zone Clock realClock = Clock.systemDefaultZone(); // print current time System.out.println("Real clock instant is " + realClock.instant()); // Creating another clock with offset 0 Clock clock = Clock.offset(realClock, Duration.ZERO); // print new clock System.out.println("New clock instant" + " with Duration = 0 is " + clock.instant()); // Creating the clock with 24 hours positive offset clock = Clock.offset(realClock, Duration.ofHours(24)); // print new clock System.out.println("New clock instant" + " with Duration = 24hours is " + clock.instant()); // Creating the clock with 24 hours negative offset clock = Clock.offset(realClock, Duration.ofHours(-24)); // print new clock System.out.println("New clock instant" + " with Duration = -24hours is " + clock.instant()); } }
Real clock instant is 2018-08-21T09:43:13.519Z New clock instant with Duration = 0 is 2018-08-21T09:43:13.785Z New clock instant with Duration = 24hours is 2018-08-22T09:43:13.785Z New clock instant with Duration = -24hours is 2018-08-20T09:43:13.785Z
Programa 2: Cuando el desplazamiento se pasa como segundos y minutos.
// Java program to demonstrate offset() // method of Clock class import java.time.*; // create class public class offsetMethodDemo { // Main method public static void main(String[] args) { // create a Zone Id for Europe/Paris ZoneId zoneId = ZoneId.of("Europe/Paris"); // base Clock with default zone Clock realClock = Clock.system(zoneId); // print current time System.out.println("Real clock instant is " + realClock.instant()); // Creating the clock with 50 seconds positive offset Clock clock = Clock.offset(realClock, Duration.ofSeconds(50)); // print new clock System.out.println("Time after 50 second later" + " than real Clock is " + clock.instant()); // Creating the clock with 30 minutes positive offset clock = Clock.offset(realClock, Duration.ofMinutes(30)); // print new clock System.out.println("Time after 30 minutes later" + " than real Clock is " + clock.instant()); } }
Real clock instant is 2018-08-21T09:43:18.921Z Time after 50 second later than real Clock is 2018-08-21T09:44:08.969Z Time after 30 minutes later than real Clock is 2018-08-21T10:13:18.969Z
Referencia: https://docs.oracle.com/javase/8/docs/api/java/time/Clock.html#offset-java.time.Clock-java.time.Duration-
Publicación traducida automáticamente
Artículo escrito por AmanSingh2210 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA