Java ChronoLocalDateTime atZone()方法及示例

来源:这里教程网 时间:2026-02-17 20:40:30 作者:

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-

相关推荐