Android 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;
第二种会更好些,特别是在给定你一个时间戳取凌晨时间的时候。