Calendar对象获取当前周的bug

项目场景:

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


问题描述

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


原因分析:

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

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


解决方案:

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

相关推荐
u***1373 分钟前
详解tomcat中的jmx监控
java·tomcat
Vic101014 分钟前
Java 序列化与反序列化:深入解析与实践
java·开发语言
后端小张14 分钟前
【JAVA 进阶】Spring Cloud 微服务全栈实践:从认知到落地
java·开发语言·spring boot·spring·spring cloud·微服务·原理
李昊哲小课17 分钟前
SSM框架完整教程
spring boot·spring·spring cloud
IT_陈寒17 分钟前
Redis 性能提升30%的7个关键优化策略,90%开发者都忽略了第3点!
前端·人工智能·后端
zl97989925 分钟前
RabbitMQ-发布确认高级
java·分布式·rabbitmq
灰小猿25 分钟前
分布式项目集成TLog实现轻量级日志链路追踪
java·分布式·springcloud·tlog·日志链路追踪
乄bluefox27 分钟前
高性能分布式 ID 生成器:基于 Redis Segment 预分配的实践
java·redis·分布式
Jiong-95232 分钟前
Java求职面试:谢飞机的奇妙旅程
java·jvm·线程池·多线程·hashmap·juc·arraylist
小二·36 分钟前
Java核心机制精讲:深入理解 static 关键字与引用传递
java·java-ee