Calendar对象获取当前周的bug

项目场景:

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


问题描述

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


原因分析:

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

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


解决方案:

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

相关推荐
William_cl几秒前
【ASP.NET进阶】Controller 层 Action 核心:异步 Action(async Task)全解析
后端·asp.net
i***27957 分钟前
springboot集成onlyoffice(部署+开发)
java·spring boot·后端
safestar201211 分钟前
Elasticsearch ILM实战:从数据热恋到冷静归档的自动化管理
java·开发语言·jvm·elasticsearch·es
Java编程爱好者13 分钟前
基于SpringAI构建大模型应用
后端
霸王大陆14 分钟前
《零基础学 PHP:从入门到实战》教程-模块四:数组与函数-2
android·开发语言·php
i***t91916 分钟前
SQL 实战:复杂数据去重与唯一值提取
java
o***111420 分钟前
SpringBoot线程池的使用
java·spring boot·后端
源码宝20 分钟前
诊所门诊系统源码,采用SpringBoot+Vue2.0+MySQL技术栈开发,满足门诊部-诊所/中小型及连锁门诊搭建信息化平台
spring boot·后端·mysql·源码·门诊系统·医疗信息化·诊疗门诊
6***v41721 分钟前
SpringBoot下获取resources目录下文件的常用方法
java·spring boot·后端
v***85722 分钟前
解决Spring Boot中Druid连接池“discard long time none received connection“警告
spring boot·后端·oracle