【发布时间】:2018-12-25 13:35:27
【问题描述】:
所以我试图用我的代码获取一个特定的数字。现在我有:
Instant Today = 2018-07-17T13:45:00Z
Instant Expiration1 = 2018-07-18T11:00:00Z
long daysTilExp = Today.until(Expiration, Chronounit.DAYS)
问题在于,因为这不是完全相隔 24 小时,它最终会返回 daysTilExp = 0 但我想要 daysTilExp = 1 我试图让两个 Instant 的实际天数分开,即使我改变了Expiration 的值如下:
Instant Expiration1 = 2018-07-18T06:00:00Z
现在是daysTilExp = 2。我在 StackOverflow 上查看了其他一些答案,但看起来人们并没有使用 Instant,他们也不希望以同样的方式有所不同
【问题讨论】:
-
你确定你的第二个例子的结果是
2吗? -
@DominikSandjaja 不,我希望结果是
2它会返回1作为真正的答案 -
请贴出编译的代码。您不能将
2018-07-17T13:45:00Z直接解析为Instant,它甚至不是字符串,它应该如何工作?使用带有小写首字母的 camelCase 作为变量名。Chronounit不应该是ChronoUnit吗? -
请解释从周二下午 1:45 到第二天早上 6 点的时间间隔如何构成两天。这甚至不是一整天。你的意思是写
2018-07-19? -
您需要为此选择一个时区。地球上任何地方的日历日期都不会相同。
标签: java temporal java.time.instant