gpt4 book ai didi

java - 确定 future 的时区转换

转载 作者:搜寻专家 更新时间:2023-10-30 21:25:30 24 4
gpt4 key购买 nike

我需要预测下一个至少 2 个时区转换将在何时针对特定时区。

Java 8 提供了新的 java.time API,特别是 java.time.zoneZoneRules.getTransitions() 看起来正是我需要的,但是它没有列出“澳大利亚/悉尼”2010 年之后的任何内容。

确定下一个 2 时区转换的日期/时间/偏移量的最可靠方法是什么?

最佳答案

方法 ZoneRules.getTransitions() 不会列出所有的转换,直到无限到 future (显然)。这得到接下来的两个转换:

ZoneId zoneId = ZoneId.of("Australia/Sydney");
ZoneRules rules = zoneId.getRules();

ZoneOffsetTransition nextTransition = rules.nextTransition(Instant.now());
System.out.println("Next transition at: " +
nextTransition.getInstant().atZone(zoneId));

ZoneOffsetTransition nextNextTransition =
rules.nextTransition(nextTransition.getInstant());
System.out.println("Next transition after that at: " +
nextNextTransition.getInstant().atZone(zoneId));

输出:

Next transition at: 2016-10-02T03:00+11:00[Australia/Sydney]

Next transition after that at: 2017-04-02T02:00+10:00[Australia/Sydney]

关于java - 确定 future 的时区转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38736793/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com