Java獲取當前時間到凌晨12點剩余秒數


有個獲取登陸用戶是否每天第一次登陸系統需求,考慮不需要入庫操作,就用redis設置key每天凌晨0點刪除

    /**
     * 獲取當前時間到凌晨12點的秒數
     * @return
     */
    public Long getSecondsNextEarlyMorning() {
        Calendar cal = Calendar.getInstance();
        cal.add(Calendar.DAY_OF_YEAR, 1);
        cal.set(Calendar.HOUR_OF_DAY, 0);
        cal.set(Calendar.SECOND, 0);
        cal.set(Calendar.MINUTE, 0);
        cal.set(Calendar.MILLISECOND, 0);
        return (cal.getTimeInMillis() - System.currentTimeMillis()) / 1000;
    }
//cal.set(Calendar.HOUR,0);此方法如果當前時間超過中午12點,則返回的結果是當前時間到明天中午十二點的秒數,如果當前時間不超過中午12:00,則返回的結果是到第二天凌晨的秒數
//cal.set(Calendar.HOUR_OF_DAY, 0);無論當前時間是否超過中午12:00,獲取的都是到第二天凌晨的秒數。

Calendar.HOUR:12小時制。
Calendar.HOUR_OF_DAY :24小時制。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM