服务器之家

服务器之家 > 正文

java获取整点与凌晨的时间戳

时间:2021-08-19 11:55     来源/作者:闲来觅箫声

Java中获取整点时间戳

在实际的开发过程中,前端给后端传时间的时候,有时候传的是整点数值,比如:timeList=[00,01,02,03,04,05,06,07,08,09,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24],这样传值给后端获取时间带了了一定的麻烦,首先我们需要把每一个整点转换成时间戳,在做有关时间的操作,具体做法如下:

?
1
2
3
4
5
Calendar cal = Calendar.getInstance();
cal.set(Calendar.HOUR_OF_DAY, Integer.valueOf(timeList[i].toString()));
cal.set(Calendar.SECOND, 0);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.MILLISECOND, 0);

在这里我们使用Java中的日期类Calendar,使用set方法设置时间点(cal.set( Calendar.HOUR_OF_DAY, Integer.valueOf(timeList[i].toString()));),这样我们就可以吧得到的整点转换成时间戳,最后使用Date类进一步操作,如下:

?
1
new Date(cal.getTimeInMillis()/1000)

最后我们得到一个时间戳,这样就转换完成。

java获取凌晨的时间戳

这两天有一个需求是查询用户匹配的推荐信息,包含一个有效时间段,以天为单位,0时0分0秒这种。

通常java中有两种方案:

第一种:Calendar。这种比较简单,也最常见。代码如下:

?
1
2
3
4
5
6
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;

第二种:直接操作时间戳,代码如下

?
1
2
3
long now = System.currentTimeMillis() / 1000l;
long daySecond = 60 * 60 * 24;
        long dayTime = now - (now + 8 * 3600) % daySecond;

第二种会更好些,特别是在给定你一个时间戳取凌晨时间的时候。

总结

到此这篇关于java获取凌晨与整点时间戳的文章就介绍到这了,更多相关java获取时间戳内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/wzl18/article/details/51218530

标签:

相关文章

热门资讯

yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总 2020-11-13
2021年耽改剧名单 2021要播出的59部耽改剧列表
2021年耽改剧名单 2021要播出的59部耽改剧列表 2021-03-05
返回顶部