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


Java java.time.zone.ZoneOffsetTransition用法及代码示例


两个偏移之间的过渡通常是夏令时切换的结果,而不连续性通常是春季的间隙和秋季的重叠,而这又是由本地时间线的不连续性引起的。

ZoneOffsetTransition 的函数是对这两个偏移之间的过渡进行建模。

注意:该类是不可变的且线程安全的

方法:

方法

说明

createTransition(int year)

此方法创建指定年份的过渡实例。

of(LocalDateTime transition, ZoneOffset offsetBefore, ZoneOffset offsetAfter)

这是一个静态方法,用于检索前后偏移之间传输的对象

equals()

此方法用于比较两个ZoneOffsetTransition对象。

compareTo()

该方法用于比较两个ZoneOffsetTransition对象

hashCode()

该方法用于检索当前ZoneOffsetTransition对象的哈希码。

getDateTimeAfter()

此方法返回应用了后偏移量的 LocalDateTime 对象。

getDateTimeBefore()

此方法返回一个应用了之前偏移量的 LocalDateTime 对象。

getDuration()

此方法返回过渡的持续时间对象。

getInstant()

此方法返回应用后偏移时第一个瞬间的 Instant 对象。

getOffsetAfter()

此方法在转换后返回ZoneOffset 对象。

getOffsetBefore()

此方法在转换后返回ZoneOffset 对象。

isGap()

此方法返回当前转换是否表示本地时间线中的间隙。

isOverlap()

此方法返回当前转换是否表示本地时间线中的重叠。

isValidOffset(ZoneOffset zoneOffset)

此方法检查传递的ZoneOffset对象是否有效。即,如果 ZoneOffset 对象至少在某一点有效,则返回 true。如果在偏移之前或偏移之后存在重叠,则传递的 ZoneOffset 对象将是有效的对象。

toEpochSecond()

此方法将转换时刻作为纪元秒(long值)返回

toString()

此方法返回一个说明当前ZoneOffsetTransition对象的字符串对象。

下面是 ZoneOffsetTransition 类的 Java 实现:

Java


import java.io.*; 
import java.time.*; 
import java.time.chrono.*; 
import java.time.zone.*; 
import java.util.*; 
  
public class GeeksForGeeks { 
    public static void main(String args[]) 
    { 
  
        int year1 = 1996, year2 = 2001; 
  
        // creating the offsets 
        ZoneOffset ofSet1 = ZoneOffset.ofTotalSeconds(5); 
        ZoneOffset ofSet2 = ZoneOffset.ofTotalSeconds(2); 
  
        // creating two transition zones 
        ZoneOffsetTransition z1 = ZoneOffsetTransition.of( 
            LocalDateTime.of(year1, 11, 24, 03, 24, 48, 0), 
            ofSet1, ofSet2); 
        ZoneOffsetTransition z2 = ZoneOffsetTransition.of( 
            LocalDateTime.of(year2, 10, 30, 01, 21, 52, 0), 
            ofSet1, ofSet2); 
  
        // checking for equality of 
        // the two transistion zones. 
        boolean ans = z1.equals(z2); 
        if (ans) 
            System.out.println( 
                "The transition zones match!"); 
        else
            System.out.println( 
                "Sorry, the transition zones do not match!"); 
  
        // using the getOffsetAfter to find the 
        // offsetAfter of a transition zone 
        ZoneOffset zone = z1.getOffsetAfter(); 
        System.out.println( 
            "The offsetAfter of the first transition zone is"
            + zone); 
    } 
}
输出
Sorry, the transition zones do not match!
The offsetAfter of the first transition zone is+00:00:02


相关用法


注:本文由纯净天空筛选整理自dikshapatro大神的英文原创作品 java.time.zone.ZoneOffsetTransition Class in Java。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。