Java ChronoLocalDateTime atZone()方法及示例
ChronoLocalDateTime接口的 atZone(ZoneId zone) 方法用于将这个ChronoLocalDateTime与一个ZoneId作为参数的时区结合起来,以创建一个ZonedDateTime对象。该方法以ZoneId为参数,将时区与该ChronoLocalDateTime结合起来,操作后返回一个ChronoZonedDateTime对象。
语法
ChronoZonedDateTime<D> atZone(ZoneId zone)
参数: 该方法接受一个参数 zone ,它是要结合到这个ChronoLocalDateTime对象的区域。它不应该是空的。
返回值: 该方法返回一个ChronoZonedDateTime,它是ChronoLocalDateTime的当前区域和作为参数的区域的组合。
以下程序说明了ChronoLocalDateTime.atZone()方法。
程序1 :
// Java program to demonstrate// ChronoLocalDateTime.atZone() method import java.time.*;import java.time.chrono.*; public class GFG { public static void main(String[] args) { // create an ChronoLocalDateTime object ChronoLocalDateTime date = LocalDateTime.parse("2018-12-06T19:21:12"); // print ChronoLocalDateTime Value System.out.println("ChronoLocalDateTime: " + date); // create ZoneId object ZoneId zone = ZoneId.of("Europe/Paris"); // apply atZone method of ChronoLocalDateTime class ChronoZonedDateTime result = date.atZone(zone); // print results System.out.println("ChronoZonedDateTime: " + result); }}
输出:
ChronoLocalDateTime: 2018-12-06T19:21:12ChronoZonedDateTime: 2018-12-06T19:21:12+01:00[Europe/Paris]
程序2
// Java program to demonstrate// ChronoLocalDateTime.atZone() method import java.time.*;import java.time.chrono.*; public class GFG { public static void main(String[] args) { // create an ChronoLocalDateTime object ChronoLocalDateTime date = LocalDateTime.parse("2018-12-06T19:21:12"); // print ChronoLocalDateTime Value System.out.println("ChronoLocalDateTime: " + date); // create ZoneId object ZoneId zone = ZoneId.of("Asia/Aden"); // apply atZone method ChronoZonedDateTime result = date.atZone(zone); // print results System.out.println("ChronoZonedDateTime: " + result); }}输出:
ChronoLocalDateTime: 2018-12-06T19:21:12ChronoZonedDateTime: 2018-12-06T19:21:12+03:00[Asia/Aden]
参考资料 : https://docs.oracle.com/javase/9/docs/api/java/time/chrono/ChronoLocalDateTime.html#atZone-java.time.ZoneId-
