亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

日歷日中 2 個瞬間之間的區別

日歷日中 2 個瞬間之間的區別

繁星coding 2021-05-31 14:10:35
所以我試圖用我的代碼獲得一個特定的數字。現在我有:Instant Today = 2018-07-17T13:45:00ZInstant Expiration1 = 2018-07-18T11:00:00Zlong daysTilExp = Today.until(Expiration, Chronounit.DAYS)問題是,因為這不是恰好相隔 24 小時,它最終會返回,daysTilExp = 0但我希望daysTilExp = 1我試圖將實際天數分開,兩個 Instants 也是如此,即使我像這樣更改 Expiration 的值:Instant Expiration1 = 2018-07-18T06:00:00Z而現在daysTilExp = 2。我在 StackOverflow 上查看了其他一些答案,但看起來人們并沒有使用Instant,他們也不希望以相同的方式有所不同
查看完整描述

3 回答

?
尚方寶劍之說

TA貢獻1788條經驗 獲得超4個贊

LocalDate 將刪除時間部分和 LocalDate 對象比較將產生預期的結果:


LocalDateTime  today = LocalDateTime.parse("2018-07-17T13:45:00");

LocalDateTime  expiration = LocalDateTime.parse("2018-07-18T11:00:00");

LocalDate todayDate = today.toLocalDate();

LocalDate expirationDate = expiration.toLocalDate();

long days = todayDate.until(expirationDate, ChronoUnit.DAYS);

System.out.println(days);


查看完整回答
反對 回復 2021-06-02
?
繁星淼淼

TA貢獻1775條經驗 獲得超11個贊

最好的方法是使用DAYS.between()方法來自java.time.temporal.ChronoUnit. 但這種方式僅適用于 Java 8+ 版本。例子:


Date start = new Date();

Date end = new Date(start.getTime() + 10_000);

long daysCount = DAYS.between(start.toInstant(), end.toInstance());


查看完整回答
反對 回復 2021-06-02
  • 3 回答
  • 0 關注
  • 197 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號