java獲取整點與凌晨的時間戳

Java中獲取整點時間戳

在實際的開發過程中,前端給後端傳時間的時候,有時候傳的是整點數值,比如:timeList=[00,01,02,03,04,05,06,07,08,09,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24],這樣傳值給後端獲取時間帶瞭瞭一定的麻煩,首先我們需要把每一個整點轉換成時間戳,在做有關時間的操作,具體做法如下:

Calendar cal = Calendar.getInstance();
cal.set(Calendar.HOUR_OF_DAY, Integer.valueOf(timeList[i].toString()));
cal.set(Calendar.SECOND, 0);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.MILLISECOND, 0);

在這裡我們使用Java中的日期類Calendar,使用set方法設置時間點(cal.set( Calendar.HOUR_OF_DAY, Integer.valueOf(timeList[i].toString()));),這樣我們就可以吧得到的整點轉換成時間戳,最後使用Date類進一步操作,如下:

new Date(cal.getTimeInMillis()/1000)

最後我們得到一個時間戳,這樣就轉換完成。

java獲取凌晨的時間戳

這兩天有一個需求是查詢用戶匹配的推薦信息,包含一個有效時間段,以天為單位,0時0分0秒這種。

通常java中有兩種方案:

第一種:Calendar。這種比較簡單,也最常見。代碼如下:

Calendar c = Calendar.getInstance();  
			c.set(Calendar.HOUR_OF_DAY, 0);
			c.set(Calendar.MINUTE, 0);
			c.set(Calendar.SECOND, 0);
			c.set(Calendar.MILLISECOND, 0);
			Long today=c.getTimeInMillis()/1000;

第二種:直接操作時間戳,代碼如下

long now = System.currentTimeMillis() / 1000l;
long daySecond = 60 * 60 * 24;
		long dayTime = now - (now + 8 * 3600) % daySecond;

第二種會更好些,特別是在給定你一個時間戳取凌晨時間的時候。

總結

到此這篇關於java獲取凌晨與整點時間戳的文章就介紹到這瞭,更多相關java獲取時間戳內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: