当前位置:首页 > 编程笔记 > 正文
已解决

Java计算不同时区的时差

来自网友在路上 184884提问 提问时间:2023-09-26 21:54:57阅读次数: 84

最佳答案 问答题库848位专家为你答疑解惑

这里计算例如"Asia/Shanghai"与"Europe/London"之间的时间差,并以正负值表示。以下是一个示例代码:

import java.time.ZoneId;
import java.time.ZonedDateTime;
import java.time.Duration;public class TimeZoneOffset {public static void main(String[] args) {// 定义"Europe/London"和"Asia/Shanghai"时区ZoneId londonZone = ZoneId.of("Europe/London");ZoneId shanghaiZone = ZoneId.of("Asia/Shanghai");// 获取两个时区的偏移ZoneRules londonRules = londonZone.getRules();ZoneRules shanghaiRules = shanghaiZone.getRules();ZoneOffset londonOffset = londonRules.getOffset(java.time.Instant.now());ZoneOffset shanghaiOffset = shanghaiRules.getOffset(java.time.Instant.now());// 计算两个偏移之间的小时差int offsetHours = (londonOffset.getTotalSeconds() - shanghaiOffset.getTotalSeconds()) / 3600;// 打印小时差(正负值表示)System.out.println("时区差:" + offsetHours + " 小时");}
}
查看全文

99%的人还看了

相似问题

猜你感兴趣

版权申明

本文"Java计算不同时区的时差":http://eshow365.cn/6-14192-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!