gpt4 book ai didi

java - 有没有办法在Java 8中将ZoneOffset转换为ZoneId?

转载 作者:行者123 更新时间:2023-12-03 07:54:22 30 4
gpt4 key购买 nike

我正在开发一个项目,其中我的zoneid有限,并且我从前端获取zoneoff设置,所以这就是为什么我想将时间关闭设置转换为java中的zoneid。有没有办法将 zoneoffset 转换为区域 id。

最佳答案

ZoneOffset 是一种 ZoneId!请参阅declaration在文档中。

public final class ZoneOffset
extends ZoneId

无需任何额外步骤。您可以直接将 ZoneOffset 对象传递给需要 ZoneId 的对象。


如果您真正想要做的是查找基于区域的区域 ID,例如Europe/London,仅从 ZoneOffset 来看,现在或任何其他特定时刻可能会有多个具有偏移量的此类 ID。

要查找特定时刻指定偏移处的基于区域的 ID 列表,您可以执行以下操作:

ZoneId.getAvailableZoneIds().stream()
.map(ZoneId::of)
.filter(id -> id.getRules().getOffset(theSpecifiedInstant).equals(theSpecifiedOffset))
.collect(Collectors.toList());
// or just .toList() in Java 16+

关于java - 有没有办法在Java 8中将ZoneOffset转换为ZoneId?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76419888/

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