Calendar对象获取当前周的bug

项目场景:

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


问题描述

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


原因分析:

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

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


解决方案:

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

相关推荐
QING6181 小时前
Kotlin Delegates.notNull用法及代码示例
android·kotlin·源码阅读
风象南1 小时前
SpringBoot中6种自定义starter开发方法
java·spring boot·后端
QING6181 小时前
Kotlin filterNot用法及代码示例
android·kotlin·源码阅读
mghio10 小时前
Dubbo 中的集群容错
java·微服务·dubbo
Asthenia041210 小时前
Spring AOP 和 Aware:在Bean实例化后-调用BeanPostProcessor开始工作!在初始化方法执行之前!
后端
Asthenia041211 小时前
什么是消除直接左递归 - 编译原理解析
后端
Asthenia041211 小时前
什么是自上而下分析 - 编译原理剖析
后端
Asthenia041212 小时前
什么是语法分析 - 编译原理基础
后端
Asthenia041212 小时前
理解词法分析与LEX:编译器的守门人
后端