java - Java 8 的日期时间包 DayOfWeek 枚举的顺序
问题描述
我正在查看 Java 8 的新 datetime 包的教程。在关于 theDayOfWeek
和Month
enums的页面上,它说DayOfMonth
enum 从星期一到星期日运行。这是为什么?我使用过的所有其他系统(包括 .NET)都有从星期日开始的一周。
解决方案
可能是因为 ISO8601,如 timeanddate.com 上所述:
根据国际标准 ISO 8601,星期一是一周的第一天。紧随其后的是周二、周三、周四、周五和周六。周日是第七天,也是最后一天。
尽管这是国际标准,但包括美国、加拿大和澳大利亚在内的一些国家/地区将星期日视为一周的开始。
可以在此处找到 1988 版标准的一些更直接的引用:
- 附件 A.3 .... 对于商业目的,即可能使用周数的会计、计划和类似目的,已发现星期一最适合作为一周的第一天。
- 3.17 周,日历:一个日历年内的一个 7 天时间段,从星期一开始,由其在年内的序数标识;一年中的第一个日历周包括该年的第一个星期四。在公历中,这相当于包括 1 月 4 日在内的一周。
- 5.2.3 .... 星期几由一位十进制数字表示。星期一应确定为任何日历周的第 [1] 天,同一周的后续天应按升序编号到星期日(第 [7] 天)。
推荐阅读
- php - 在 mPDF 中运行 php 函数
- android - 如何编写一个使用 Context 从 Android 框架中检索数据的用例
- ruby-on-rails - 按正则表达式模式搜索 ActiveRecord
- c# - 使用 WebRootPath 创建 HostingEnvironment 实例
- javascript - 通过 iframe 从 javascript 中的 url 打印内容
- laravel - 如何在 vue js 中添加加载器
- database - 如何在docker中打oracle补丁
- node.js - NodeJS Mongoose updateOne 每次都不匹配
- swift - 无法将“字符串”类型的值转换为预期的参数类型“玩家?”
- node.js - 更新 findOne()/find()/findById() 返回的文档 - mongoose