- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
不久前我遇到了 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/
这是一个非常基本的问题,不需要太深入的回答。我目前只是对开发适用于 iPhone 的应用程序感兴趣,在从 Mac 站点学习了 swift2 语言之后,我只是想知道我应该使用哪个 API。 我做了一些适
我是一名优秀的程序员,十分优秀!