El método withZoneSameInstant() de una clase ZonedDateTime se usa para devolver una copia de este objeto ZonedDateTime cambiando la zona horaria y sin el instante. Este método se basa en retener el mismo instante, por lo que los espacios y superposiciones en la línea de tiempo local no tienen efecto en el resultado.
Sintaxis:
public ZonedDateTime withZoneSameInstant(ZoneId zone)
Parámetros: este método acepta una única zona de parámetros a la que cambiar la zona horaria. No debe ser nulo.
Valor devuelto: este método devuelve un ZonedDateTime basado en esta fecha y hora con la zona solicitada.
Excepción lanzada: DateTimeException si el resultado excede el rango de fechas admitido.
Ejemplo 1:
Java
// Java program to demonstrate // ZonedDateTime.withZoneSameInstant() method // Importing required classes import java.time.*; // Main class public class GFG { // Main driver method public static void main(String[] args) { // Creating a ZonedDateTime object ZonedDateTime zonedDT = ZonedDateTime.parse( "2018-12-06T19:21:12.123+05:30[Asia/Calcutta]"); // Printing ZonedDateTime of Calcutta on console System.out.println("ZonedDateTime of Calcutta: " + zonedDT); // Applying withZoneSameInstant() ZonedDateTime zonedDT2 = zonedDT.withZoneSameInstant( ZoneId.of("Pacific/Fiji")); // Now printing ZonedDateTime of Fuji // after withZoneSameInstant() System.out.println("ZonedDateTime of Fuji: " + zonedDT2); } }
ZonedDateTime of Calcutta: 2018-12-06T19:21:12.123+05:30[Asia/Calcutta] ZonedDateTime of Fuji: 2018-12-07T02:51:12.123+13:00[Pacific/Fiji]
Ejemplo 2:
Java
// Java program to Demonstrate // ZonedDateTime.withZoneSameInstant() method // Importing required classes import java.time.*; // Main class public class GFG { // Main driver method public static void main(String[] args) { // Creating a ZonedDateTime object and // passing date and time of Europe/Paris ZonedDateTime zonedDT = ZonedDateTime.parse( "2018-10-25T23:12:31.123+02:00[Europe/Paris]"); // Printing ZonedDateTime of Paris on console // before applying withZoneSameInstant() method System.out.println("ZonedDateTime of Paris: " + zonedDT); // Now applying withZoneSameInstant() method ZonedDateTime zonedDT2 = zonedDT.withZoneSameInstant( ZoneId.of("Canada/Yukon")); // Printing ZonedDateTime // after applying withZoneSameInstant() System.out.println("ZonedDateTime of Yukon: " + zonedDT2); } }
ZonedDateTime of Paris: 2018-10-25T23:12:31.123+02:00[Europe/Paris] ZonedDateTime of Yukon: 2018-10-25T14:12:31.123-07:00[Canada/Yukon]
Publicación traducida automáticamente
Artículo escrito por AmanSingh2210 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA