有一種low的方式,就是你把兩個時間都換成秒,然后除以一天的秒數(shù),然后向上取整,就是算的天數(shù)。但是這么實現(xiàn)太low啦。
jdk有高級的api,我們?yōu)樯哆€要自己去實現(xiàn)呢,問題就是我們不知道。
所以,我在這寫個筆記,記錄下,jdk 1.8 是怎么做的。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
/** * 計算兩個時間點之間的天數(shù) */ private static void getbetweenday() { localdate start = localdate.of( 2018 , 2 , 12 ); localdate now = localdate.now(); system.out.println( "兩個時間之間的天數(shù)是:" + timesutils.getbetweenday(start, now) + " 天。" ); } /** * 計算兩個時間點之間的天數(shù) */ public static long getbetweenday(localdate start, localdate end) { return end.toepochday() - start.toepochday(); } |
后面的那個方法就是重點啦。
localdate.toepochday()。
將日期轉(zhuǎn)換成epoch 天,epoch就是從1970-01-01(iso)。開始的天數(shù),和那個時間戳是一個道理,時間戳是秒數(shù)。
文章是簡單了點,也許太簡單了點。就當(dāng)做個筆記吧。
感謝大家對服務(wù)器之家的支持。
原文鏈接:https://blog.csdn.net/qq_27093465/article/details/80347310