java.time.Instant.atZone() 方法示例



描述

java.time.Instant.atZone(ZoneId zone) 方法将此实例与时区结合,创建 ZonedDateTime。

声明

以下是对 java.time.Instant.atZone(ZoneId zone) 方法的声明。

public ZonedDateTime atZone(ZoneId zone)

参数

zone - 要与之结合的区域,非空。

返回值

由此实例和指定区域形成的区域化日期时间,非空。

异常

DateTimeException - 如果结果超出了支持范围。

示例

以下示例展示了 java.time.Instant.atZone(ZoneId zone) 方法的用法。

package com.tutorialspoint;

import java.time.Instant;
import java.time.OffsetDateTime;
import java.time.ZoneId;
import java.time.ZoneOffset;
import java.time.ZonedDateTime;
import java.util.Set;

public class InstantDemo {
   public static void main(String[] args) {

      Instant instant = Instant.parse("2017-02-03T10:37:30.00Z");
      System.out.println(instant);  
      
      Set<String> zones = ZoneId.getAvailableZoneIds();
      
      ZoneId zone = ZoneId.of(zones.iterator().next());
      
      ZonedDateTime  date = instant.atZone(zone);
      System.out.println(date);  
   }
}

让我们编译并运行以上程序,它将生成以下结果 -

2017-02-03T10:37:30Z
2017-02-03T13:37:30+03:00[Asia/Aden]
广告