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


Java ZonedDateTime ofLocal()用法及代码示例

ZonedDateTime类的ofLocal()方法用于使用ZonmeId和首选偏移量从本地日期时间创建ZonedDateTime实例,如果可能,则将所有三个localDateTime,ZoneOffset和ZoneId都作为参数传递。本地日期时间解析为单个通过找到与UTC /格林威治标准时间相对应的本地日期时间与区域ID规则定义的有效偏移量,可以在时间轴上获得即时信息。

用法:

public static ZonedDateTime ofLocal(LocalDateTime localDateTime,
                                    ZoneId zone,
                                    ZoneOffset preferredOffset)

参数:此方法接受三个参数Instant(即本地日期时间),zone(即时区)和ZoneOffset(即区域偏移量)。


返回值:此方法返回分区的日期时间。

以下示例程序旨在说明ofLocal()方法:
示例1:

// Java program to demonstrate 
// ZonedDateTime.ofLocal() method 
  
import java.time.*; 
  
public class GFG { 
    public static void main(String[] args) 
    { 
  
        // create localDateTime object 
        LocalDateTime lt 
            = LocalDateTime 
                  .parse("2019-01-29T23:55:59.00"); 
  
        // create ZoneOffset 
        ZoneOffset zoneOffset 
            = ZoneOffset.ofHours(11); 
  
        // create a ZonID 
        ZoneId zone 
            = ZoneId.of("Europe/Paris"); 
  
        // apply ofLocal method 
        // of ZonedDateTime class 
        ZonedDateTime zt 
            = ZonedDateTime 
                  .ofLocal(lt, zone, zoneOffset); 
  
        // print the result 
        System.out.println("ZonedDateTime is "
                           + zt); 
    } 
}
输出:
ZonedDateTime is 2019-01-29T23:55:59+01:00[Europe/Paris]

示例2:

// Java program to demonstrate 
// ZonedDateTime.ofLocal() method 
  
import java.time.*; 
  
public class GFG { 
    public static void main(String[] args) 
    { 
  
        // create localDateTime object 
        LocalDateTime lt 
            = LocalDateTime 
                  .parse("2019-01-29T23:55:59.00"); 
  
        // create ZoneOffset 
        ZoneOffset zoneOffset 
            = ZoneOffset.ofHours(10); 
  
        // create a ZonID 
        ZoneId zone 
            = ZoneId.of("Australia/Darwin"); 
  
        // apply ofLocal method 
        // of ZonedDateTime class 
        ZonedDateTime zt 
            = ZonedDateTime 
                  .ofLocal(lt, zone, zoneOffset); 
  
        // print the result 
        System.out.println("ZonedDateTime is "
                           + zt); 
    } 
}
输出:
ZonedDateTime is 2019-01-29T23:55:59+09:30[Australia/Darwin]

参考文献: https://docs.oracle.com/javase/10/docs/api/java/time/ZonedDateTime.html#ofInstant(java.time.LocalDateTime, java.time.ZoneOffset, java.time.ZoneId)



相关用法

注:本文由纯净天空筛选整理自AmanSingh2210大神的英文原创作品 ZonedDateTime ofLocal() method in Java with Examples。非经特殊声明,原始代码版权归原作者所有,本译文的传播和使用请遵循“署名-相同方式共享 4.0 国际 (CC BY-SA 4.0)”协议。