Calendar对象获取当前周的bug

项目场景:

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


问题描述

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


原因分析:

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

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


解决方案:

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

相关推荐
用户37215742613516 分钟前
Java 设置 Word 文档编辑限制并允许指定区域编辑
java
wen_zhufeng24 分钟前
用 vLLM 加速 TTS 推理:通用改造指南
android·vllm
宠友信息37 分钟前
社区类源码开发实践中的仿小红书系统技术要点分析
java·spring boot·redis·mysql·uni-app·vue·内容运营
IT_陈寒1 小时前
SpringBoot自动配置失效?你可能漏了这个小开关
前端·人工智能·后端
用户3721574261351 小时前
Java 设置 PDF 表单域只读或扁平化
java
摇滚侠1 小时前
《SpringBoot 3:入门与应用实战》第 9 章 使用 WebMvc 开发应用 阅读笔记 1
spring boot·笔记·后端
用户8356290780511 小时前
使用 Python 在 Excel 中插入 OLE 对象
后端·python
程序员小八7772 小时前
Go 语言特性
开发语言·后端·golang
XuCoder2 小时前
你以为隔离级别只是个开关,可 MySQL 凭什么靠它挡住幻读?
后端
创新技术阁2 小时前
FastapiAdmin 前后端启动全流程详解
前端·后端·fastapi