Calendar对象获取当前周的bug

项目场景:

双周项目管理,需要获取当前周为一年之中的第几周,原先的代码是用Calendar对象,先用setTime()把当前时间传入,再用get(3)获取一年中的第几周


问题描述

实际发现会比真实的周少一点,且时间是周日到周六为一周


原因分析:

经排除发现,这个api的计算规则是有一定问题的。

首先它是以星期日为一周的开始,星期六为一周的结束。


解决方案:

获取当前年1号的星期几,再去用当前时间+星期几-1day得到一个时间,将这个时间传入setTime()中,get(3)得到的就是正常的当前周了

相关推荐
serendipity_hky几秒前
【SpringCloud | 第4篇】Gateway网关统一入口
spring·spring cloud·微服务·gateway
sunxunyong9 分钟前
doris运维命令
java·运维·数据库
菜鸟起航ing11 分钟前
Spring AI 全方位指南:从基础入门到高级实战
java·人工智能·spring
古城小栈27 分钟前
Docker 多阶段构建:Go_Java 镜像瘦身运动
java·docker·golang
华仔啊30 分钟前
这 10 个 MySQL 高级用法,让你的代码又快又好看
后端·mysql
MapGIS技术支持38 分钟前
MapGIS Objects Java计算一个三维点到平面的距离
java·开发语言·平面·制图·mapgis
Coder_Boy_41 分钟前
业务导向型技术日志首日记录(业务中使用的技术栈)
java·驱动开发·微服务
码事漫谈1 小时前
国产时序数据库崛起:金仓凭什么在复杂场景中碾压InfluxDB
后端
上进小菜猪1 小时前
当时序数据不再“只是时间”:金仓数据库如何在复杂场景中拉开与 InfluxDB 的差距
后端
盖世英雄酱581362 小时前
springboot 项目 从jdk 8 升级到jdk21 会面临哪些问题
java·后端