已知時間間隔毫秒數,當前時間毫秒數,8小時 對應的毫秒數。動態獲取時間段

/**  * periodInMillis:時間間隔毫秒數  * currentInMillis :當前時間毫秒數  * timezoneInMillis: 8小時 對應的毫秒數 **/ public static String collectIndexForTime(long periodInMillis, long currentInMillis , long timezoneInMillis) {app

currentInMillis += timezoneInMillis; if (currentInMillis <= periodInMillis) { return 0; } long time = currentInMillis/periodInMillis * periodInMillis - timezoneInMillis; String start = DateFormatUtils.format(time, Consts.DATE_FORMAT_INDEX); String end = DateFormatUtils.format(time+periodInMillis-1, Consts.DATE_FORMAT_INDEX); StringBuilder sb = new StringBuilder(); sb.append(start).append(ES_INDEX_SPLIT_STR).append(end); return sb.toString(); } 這段代碼能實現:假如:periodInMillis = 432000000(5天) 當前時間:System.currentTimeMillis()ui

返回的結果會是:20181210-20181214orm

若是當前時間是20181216,這返回結果就會是:20181214-20181219io

不知道上面的實現原理?有沒有大神給解釋下。form

相關文章
相關標籤/搜索