Calendar对象获取当前周的bug

项目场景:

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


问题描述

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


原因分析:

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

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


解决方案:

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

相关推荐
多敲代码防脱发19 分钟前
Spring进阶(容器实现)
java·开发语言·后端·spring
可视之道27 分钟前
工业物联网前端技术栈选型与性能优化实战
后端
星辰_mya32 分钟前
彩云之上——[特殊字符]的架构师
java·后端·微服务·面试·架构
YF021142 分钟前
深入剖析 Kotlin 的高效之道与核心实战
android·kotlin·app
phltxy42 分钟前
Redis 主从复制
java·数据库·redis
Full Stack Developme43 分钟前
Spring-Core 解析
java·spring·rpc
LucianaiB1 小时前
参加高德 AI 发布会的一点感受:地图,正在变成 AI 的行动入口
后端
属于自己的天空1 小时前
一个文件让 Claude Code 理解你的项目:CLAUDE.md 从入门到精通
后端
jiangbo_dev1 小时前
还在手搓分布式事务?我把 Saga + Outbox 模板化后,新服务接入从 5 天压到 1 天
后端
BING_Algorithm1 小时前
深入理解JVM垃圾回收
jvm·后端·面试