栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Java日历-设置day_of_week后日期不可预测

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java日历-设置day_of_week后日期不可预测

首先要了解的是,Month + Day + DayOfWeek对日历没有任何意义。日历将根据以下信息计算日期的真实值

年+月+日期

要么

YEAR + MonTH + WEEK_OF_MonTH + DAY_OF_WEEK

(或其他一些组合,例如年+年的某日等)。因此,日期+ DayOfWeek在本质上并没有太大的意义。

要理解的第二件事是,在Java日历上进行设置时,它实际上不会重新计算绝对时间或更新相关字段,直到发生强制计算的操作为止。

第一次设置后,日历处于冲突状态。月和日表示今天是7月12日,但“星期几”和“星期几”仍然说今天是今天,无论今天是什么。然后,您将星期几设置为星期五。因此,现在每年的月份和日期都说是7月12日,但是“月份的周”和“星期几”字段表示是“本周”的星期五。

日历规则规定,发生冲突时,最近设置的字段将“获胜”,因此用于计算其他字段的是星期几和星期几再加上本周的星期五。

在中间插入一个get会“修复”它,因为它会强制将日历的整个内部状态重新计算到7月12日(星期二),然后再设置为星期五,因此不会发生内部冲突。在将星期几设置为星期五之前,通过重新计算,“月份的星期”设置为包含7月12日的星期。

编辑:很抱歉两天后做出更改,注意到此文件已在旧的浏览器选项卡中打开,并认为我会为将来的Google员工提供希望的帮助而扩展:

它在评论中为乔恩工作的原因是他住在伦敦。他的计算机认为星期几从星期一开始。因此,当被问及“本周”的星期五时,当在7月17日(星期日)被询问时,它仍然会在7月15日做出回应。之所以提出这一点,是因为在不同的语言环境中一周中不同的第一天只是尝试在日历中使用WEEK_OF字段的另一种方式。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/507630.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号