java——如何获取当前时间到第二天凌晨(12点)的秒的差值(或者分钟的差值)
前天在写注册领红包的一个需求时候,用redis控制每天给用户弹窗的一个数量,规定了这个redis缓存的有效期就是凌晨12点。遇到了问题,但是最后还是给解决了;在这记录一下。
在百度上看到一个这样的代码(代码如下),它是这样的一个结果:
(1)如果当前时间超过中午12:00,则返回的结果是当前时间到第二天中午12:00的秒数;
(2)如果当前时间不超过中午12:00,则返回的结果是到第二天凌晨的秒数,也就是我想要的结果。
如果想要获取当前时间(是否超过中午12:00)到第二天凌晨的秒数(或者分钟数)应该这样做。》》》》》》
这样得到的就是当前时间到第二天凌晨12点的秒的差值。如果想得到分钟数只需要修改此行代码即可:
Long timeout = ((calendar.getTimeInMillis()-System.currentTimeMillis()) / 1000) / 60; System.out.println(timeout);
或这样:
Long timeout = (calendar.getTimeInMillis() - System.currentTimeMillis()) / (1000*60);