为什么要有时区

由于地球的自传公转决定了,我们生活在地球上,无法完全按照同一个时间来安排生活和社会活动。否则的话,可能有人在12:00吃午饭,但是对于另一地区来说,他们可能02:00 才对应着真正的太阳直射时间。
    所以人们便自己创建了时区机制、来保证能更合理的安排生产生活。时区机制,比自传公转这些问题更加复杂。目前世界时区的数据库,由因特网编号管理局(Interent Assigned Number Authority) IANA 来维护,每年会更新几次,来处理夏令时规则的变化。JAVA便是使用了IANA的数据库。

什么是夏令时DST(Daylight Saving Time)

夏令时一般是在昼长夜短的夏季,人为的将时钟拨快一小时。假如夏天5点天亮,如果作息习惯不变,按照原来的习惯,早上6点关灯的话,就浪费了一小时的电量。所以当夏天来临,就实行夏令时机制,将始终拨快,这样的话,原本五点天亮,六点关灯,就变成了,五点天亮,五点关灯,因为始终拨快后的六点,便对应着原来的五点了。

我国停止使用夏令时 我们在1986年开始使用夏令时,在1991年宣布不再使用。夏令时有种掩耳盗铃的意味,在不同的季节,调整作息时间比起粗暴的波动时针可能更合理 1、夏令时相当于强制改变人的作息习惯 2、夏令时造成某些时间出现两次极其混乱 3、我国横跨五个时区,夏令时并不够通用 4、节约的照明电量有限,反而会增加制冷耗电

CST和GMT

GMT (Greenwich Mean Time) 格林威治标准时,用标准世界时UTC表示则为UTC+0

CST

  1. 在中国表示中国标准时,对应已命名的时区标准就是Asia/Shanghai
  2. Asia/Shanghai会兼容地区的历史上各个时间节点,例如中国1986~1991实行了夏令时,在1992年开始 CST 就和UTC+8完全一致了。
  3. 我国虽然横跨五个时区,但是为了方便生产生活,统一只用了一个时区 CST
  4. JAVA还有个OffsetDateTime类,专门用来处理只带有UTC偏移量的时间,但是没有关联地区的时区规则,一般用来处理不需要时区规则的程序。对于人类的时间,应使用ZonedDateTime

java对夏令时的处理

  1. 夏令时开始时,直接把时间往后调一小时,那么对于LocalDate将直接消失1消失,如果使用消失的LocalDate来初始化一个ZoneDateTime 那么生成的ZoneDateTime时间会和尝试设置的不同,但是这是正确的。
  2. 夏令时结束时,直接把日期往前调整1消失,对于LocalDateTime来说,同样的一个小时,将会出现两遍。用这个重复的时间来初始化ZoneDateTime 那么将会得到第一次的那个时间。对于LocalDateTime来说,一天内的这个重合的时间完全一样,但是对于ZoneDateTime来说,偏移量是有区别的。
  3. 对于跨夏令时的时间处理,为了和人类的时间一致,不能直接添加Duration对象,而应该使用Period对象来进行处理。

一文说清楚什么是时区,夏令时,GMT和CST相关推荐

  1. 世界时区: UTC/GMT+08:00 东八区

    世界时区: UTC/GMT+08:00  东八 转载▼ 区 UTC/GMT+08:00  东八区: 112度30分-127度30分 东8时区  香港新加坡 (GMT+ 8) 中国标准时间(台湾:中原标 ...

  2. GMT UTC CST ISO 夏令时 时间戳,都是些什么鬼?

    目录 本文提纲 版本约定 ✍正文 GMT:格林威治时间 凭什么格林威治作为标准时间? 地球自转 中国有哪几个时区? 美国有哪几个时区? GMT和Http协议的渊源 UTC:世界标准时间 UTC和GMT ...

  3. 24时区,GMT,UTC,DST,CST时间详解

    全球24个时区的划分       相较于两地时间表,可以显示世界各时区时间和地名的世界时区表(World Time),就显得精密与复杂多了,通常世界时区表的表盘上会标示着全球24个时区的城市名称,但究 ...

  4. Linux shell不同时区时间转换(时区 夏令时 时间戳)

    如果目标地区没有使用夏令时,可以日期或时间戳直接减去小时差,也可以使用下面兼容夏令时的方法. 概念:         时间戳 :从格林威治时间1970年01月01日00时00分00秒起至现在的总秒数. ...

  5. 嵌入式的时间概念:GMT,UTC,CST,DST,RTC,NTP,SNTP,NITZ

    GMT,UTC,CST,DST,RTC,NTP,SNTP,NITZ: 嵌入式的时间 ref 嵌入式开发中,几个时间概念? 彻底搞懂UTC时间 NTP协议详解 使用NTP协议获取网络时间戳(C/C++实 ...

  6. UTC GMT EST CST 区别

    文章目录 简介 引用 简介 UTC GMT EST PST 各种时间标准傻傻分不清 GMT (Greenwich Mean Time)的缩写,指的是皇家格林威治天文台的标准时间,称作格林威治时间,因为 ...

  7. atitit.GMT UTC Catitit.GMT UTC CST DST CET 星期 月份 节日 时间的不同本质and起源

    atitit.GMT UTC Catitit.GMT UTC CST DST CET 星期 月份 节日 时间的不同本质and起源 1. GMT(Greenwich Mean Time)是格林尼治平时 ...

  8. 世界计算机世界GMT,UTC,CST,本地时间,1970

    参考:https://baike.baidu.com/item/%E4%B8%96%E7%95%8C%E6%97%B6,https://baijiahao.baidu.com/s?id=1732139 ...

  9. UTC时间 GMT时间 本地时间 北京时间 时区 夏令时简要说明

    1.UTC时间 与 GMT时间 整个地球分为二十四时区,每个时区都有自己的本地时间.为了统一起见,使用一个统一的时间,称为通用协调时(UTC, Universal Time Coordinated). ...

  10. UTC时间 GMT时间 本地时间 北京时间 时区 夏令时简要说明

    1.UTC时间 与 GMT时间 整个地球分为二十四时区,每个时区都有自己的本地时间.为了统一起见,使用一个统一的时间,称为通用协调时(UTC, Universal Time Coordinated). ...

最新文章

  1. Codeforces Divisibility【水题】
  2. 接收蓝牙广播onReceive中getStringExtra()出现错误
  3. 杭电oj2072,2091字符串java实现
  4. Android自定义控件(三)——有弹性的ListView
  5. jzoj3736-[NOI2014模拟7.11]数学题(math)【计算几何】
  6. Redis之List类型操作
  7. 对某公司一次***测试
  8. 自学Python:截取屏幕画面
  9. Django------多表操作
  10. python 输入一个列表s和一个由二元组成的列表p_re --- 正则表达式操作 — Python 3.9.1 文档...
  11. 教程:Visual Studio 连接 MySQL 数据库(包含常见错误及解决方法)
  12. 高通camera模块驱动指南资料介绍
  13. 大话设计模式——解释器模式
  14. 不值一提?开源CRM是否值得应用
  15. 微服务集成skywalking实现全链路日志追踪方案
  16. DH-SQL(学生信息表-课程表-选课表)
  17. MSSQL_8 操作结果集
  18. 学习costmap代价地图
  19. 【STM32H7教程】第93章 STM32H7的SPI总线应用之驱动ADS1256(8通道24bit ADC, 增益可编程)
  20. 智能电网与配网自动化工程建设

热门文章

  1. 面试那些事儿- UI设计面试常见问题
  2. 【Unity面试】 2022年Unity面试题分享 | 全面总结 | 建议收藏
  3. 【解决】gnglia报错:Can‘t open PID file /usr/local/ganglia/var/run/gmetad.pid (yet?)
  4. 打包一个包含手表端应用的手机端APK应用—Ticwear
  5. Pocket PC访问PC上的Webservice
  6. 由一次不断GC并耗费过长的时间所想到的工具 - jvmkill与jvmquake
  7. FFmpeg一些感想
  8. 关于INTERVAL 函数的使用
  9. 嵌入式实时操作系统及应用开发(第三版)罗蕾主编光盘镜像
  10. gprs模块与服务器通信协议,gprs模块与服务器通信原理分析