gpt4 book ai didi

java - 谁能想到 XMLGregorianCalendar.getEon() 的实际用途?

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:23:03 25 4
gpt4 key购买 nike

不久前我遇到了 XMLGregorianCalendar 类,它让 GregorianCalendar 看起来很轻量的方式给我留下了深刻的印象。 ;)

最近,我注意到一个方法 BitInteger getEon() 让我很困惑。

来自 XMLGregorianCalendar 的 Javadoc

getYear() is a value between -(10^9-1) to (10^9)-1 or DatatypeConstants.FIELD_UNDEFINED. getEon() is high order year value in billion of years.

我突然想到,地球上白天的长度在数百万年中发生了显着变化,一年中的天数也发生了变化。公历在十亿年前或十亿年后都没有意义。因此 getEon() 只能明智地设置为 0 或保留为未定义,这具有大致相同的结果。

我的问题:我错过了什么吗? getEon() 方法是否有合理的用途?

最佳答案

嗯,根据http://www.merlyn.demon.co.uk/critdate.htm使用 64 位整数的 unix 时间将在 3E11 左右结束。鉴于 Java 使用毫秒而不是秒,Java 时间(64 位)将在 3E8 左右结束。因此,这提供了一些超出 JVM 限制的扩展。

在更实际的说明中,当您使用这种时间尺度时,您是在谈论地质、进化或宇宙学事件,因此日期(年、月、日...)中的其余数据是没有意义的。如果您对年份使用 long(或者甚至对 eon 使用 int)而忘记其余部分,则更好。

看起来有人真的很无聊(而且很无聊)。


编辑:当然,总会有一些疯狂的问题可以使用它,但不是现实世界的问题(例如:“如果我们有一个有 64 个圆盘的汉诺塔,每秒移动一个圆盘,我们什么时候完成交换塔”)。

关于java - 谁能想到 XMLGregorianCalendar.getEon() 的实际用途?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6385645/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com