我正在开发一个应用程序,我需要维护不同位置的时间。我在 Java 中使用 Date、Timezone 类。我的问题是 - Timezone 类是否知道有关夏令时的详细信息?就像如果时区经过某个时区,考虑到夏令时,它是否返回正确的时间?
编辑:
跟进 - 为什么 inDaylightTime() 作为抽象实现并且只能与指定开始/结束夏令时的 SimpleTimeZone 一起使用?
最佳答案
是的,JVM 的日期类可以识别时区。
时区的 DST 信息由政府定期更新,如果您的应用程序执行跨时区计算,则需要相应更新 JVM。当这种情况发生变化时,Oracle 会发布 JVM 更新。请参阅Timezones, Daylight Savings, and the Sun TZupdater for the Java Runtime Environment (JRE)
根据我的经验,处理这个问题的核心 Java 类非常难以使用。我从 Joda Time 得到更好的结果。 (Joda-Time 还尊重底层时区信息)。
关于java - 时区是否包含 DST 信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5645571/