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


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

ZonedDateTime类的withEarlierOffsetAtOverlap()方法用于将区域偏移量更改为本地时间线重叠处的两个有效偏移量中的较早位置之后,返回此ZonedDateTime对象的副本。当夏时制结束并且将一小时返回到时间线时,就会发生重叠。因此,本地日期时间有两个有效的偏移量,调用withEarlierOffsetAtOverlap方法将返回两个区域中较早的一个ZonedDateTime。如果在不重叠的情况下调用此方法,则将返回此方法。此实例是不可变的,不受此方法调用的影响。

用法:

public ZonedDateTime withEarlierOffsetAtOverlap()

参数:此方法不接受任何参数。


返回值:此方法基于此日期时间(具有更早的偏移量)返回ZonedDateTime。

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

示例1:

// Java program to demonstrate 
// withEarlierOffsetAtOverlap() method 
  
import java.time.*; 
  
public class GFG { 
    public static void main(String[] args) 
    { 
  
        // create a ZonedDateTime object 
        ZonedDateTime zonedDT 
            = ZonedDateTime 
                  .ofLocal( 
                      LocalDateTime.of(2018, 11, 4, 1, 25, 43), 
                      ZoneId.of("US/Central"), 
                      ZoneOffset.ofHours(-6)); 
  
        // print ZonedDateTime 
        System.out.println("Before"
                           + " withEarlierOffsetAtOverlap():\n "
                           + zonedDT); 
  
        // apply withEarlierOffsetAtOverlap() 
        ZonedDateTime zonedDT2 
            = zonedDT.withEarlierOffsetAtOverlap(); 
  
        // print ZonedDateTime after 
        // withEarlierOffsetAtOverlap() 
        System.out.println("\nAfter"
                           + " withEarlierOffsetAtOverlap():\n "
                           + zonedDT2); 
    } 
}
输出:
Before withEarlierOffsetAtOverlap():
 2018-11-04T01:25:43-06:00[US/Central]

After withEarlierOffsetAtOverlap():
 2018-11-04T01:25:43-05:00[US/Central]

示例2:

// Java program to demonstrate 
// withEarlierOffsetAtOverlap() method 
  
import java.time.*; 
  
public class GFG { 
    public static void main(String[] args) 
    { 
  
        // create a ZonedDateTime object 
        ZonedDateTime zonedDT 
            = ZonedDateTime 
                  .ofLocal( 
                      LocalDateTime.of(2021, 11, 07, 1, 05, 53), 
                      ZoneId.of("US/Central"), 
                      ZoneOffset.ofHours(-6)); 
  
        // print ZonedDateTime 
        System.out.println("Before"
                           + " withEarlierOffsetAtOverlap():\n "
                           + zonedDT); 
  
        // apply withEarlierOffsetAtOverlap() 
        ZonedDateTime zonedDT2 
            = zonedDT.withEarlierOffsetAtOverlap(); 
  
        // print ZonedDateTime after 
        // withEarlierOffsetAtOverlap() 
        System.out.println("\nAfter"
                           + " withEarlierOffsetAtOverlap():\n "
                           + zonedDT2); 
    } 
}
输出:
Before withEarlierOffsetAtOverlap():
 2021-11-07T01:05:53-06:00[US/Central]

After withEarlierOffsetAtOverlap():
 2021-11-07T01:05:53-05:00[US/Central]

参考: https://docs.oracle.com/javase/10/docs/api/java/time/ZonedDateTime.html#withEarlierOffsetAtOverlap()



相关用法

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