面我取的是今天零点毫秒时间戳也就是距格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总毫秒数。
java自带获得当前毫秒时间戳的方法是System.currentTimeMillis()
,零点是24小时轮回的零界点。所以我们把当前时间戳取24小时毫秒数取余,然后用当前毫秒时间戳减这个余就行。
/** * @Author:whf * @param: * @Description: 获得“今天”零点时间戳 获得2点的加上2个小时的毫秒数就行 * @Date:2018/4/12 0012 */ public static Long getTodayZeroPointTimestamps(){ Long currentTimestamps=System.currentTimeMillis(); Long oneDayTimestamps= Long.valueOf(60*60*24*1000); return currentTimestamps-(currentTimestamps+60*60*8*1000)%oneDayTimestamps; }
加上8小时的毫秒数是因为毫秒时间戳是从北京时间1970年01月01日08时00分00秒开始算的,这样今天零点取oneDayTimestamps的余就是0,。