当前位置: 首页>>编程示例 >>用法及示例精选 >>正文


Java LocalDateTime atZone()用法及代码示例

LocalDateTime类atZone()方法

  • atZone() 方法可在java.time包。
  • atZone() 方法用于通过将此 LocalDateTime(日期时间)合并到给定区域来创建 ZonedDateTime。
  • atZone() 方法是一个非静态方法,它只能通过类对象访问,如果我们尝试使用类名访问方法,那么我们将得到一个错误。
  • atZone() 方法在表示 LocalDateTime 时不抛出异常。

用法:

    public ZonedDateTime atZone(ZoneId zo);

参数:

  • ZoneId zo– 表示要与此 LocalDateTime 合并的区域。

返回值:

这个方法的返回类型是ZonedDateTime,它返回 ZonedDateTime 对象,该对象保存将此 LocalDateTime 与给定区域合并的值。

例:

// Java program to demonstrate the example 
// of atZone(ZoneId zo) method of LocalDateTime

import java.time.*;

public class AtZoneOfLocalDateTime {
    public static void main(String args[]) {
        // Instantiates two LocalDateTime
        // and a ZonedId
        LocalDateTime da_ti1 = LocalDateTime.parse("2005-10-05T10:10:10");
        LocalDateTime da_ti2 = LocalDateTime.now();
        ZoneId zo = ZoneId.of("Africa/Accra");

        // Display da_ti1, da_ti2
        // and zo
        System.out.println("LocalDateTime da_ti1 and da_ti2:");
        System.out.println("da_ti1:" + da_ti1);
        System.out.println("da_ti2:" + da_ti2);
        System.out.println();
        System.out.println("ZoneId zo:");
        System.out.println("zo:" + zo);


        System.out.println();

        // Here, this method creates a ZonedDateTime
        // by merging this date-time (da_ti1)
        // with the given zone (zo) i.e. 
        // da_ti1 + zo
        ZonedDateTime zo_da_time = da_ti1.atZone(zo);

        // Display updated zo_da_time
        System.out.println("da_ti1.atZone(zo):" + zo_da_time);

        // Here, this method creates a ZonedDateTime
        // by merging this date-time (da_ti2)
        // with the given zone 
        // (ZoneId.of("Africa/Asmara")) i.e. 
        // da_ti2 + zone
        zo_da_time = da_ti2.atZone(ZoneId.of("Africa/Asmara"));

        // Display updated zo_da_time
        System.out.println("da_ti2.atZone(ZoneId.of(Africa/Asmara)):" + zo_da_time);
    }
}

输出

LocalDateTime da_ti1 and da_ti2:
da_ti1:2005-10-05T10:10:10
da_ti2:2020-06-04T08:10:01.516588

ZoneId zo:
zo:Africa/Accra

da_ti1.atZone(zo):2005-10-05T10:10:10Z[Africa/Accra]
da_ti2.atZone(ZoneId.of(Africa/Asmara)):2020-06-04T08:10:01.516588+03:00[Africa/Asmara]


相关用法


注:本文由纯净天空筛选整理自 Java LocalDateTime Class | atZone() Method with Example。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。