Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
W
wangxiaolu-sfa-common-core
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
sfa
wangxiaolu-sfa-common-core
Commits
f98856ca
提交
f98856ca
authored
2月 10, 2025
作者:
吕本才
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
增加分割日期的方法
上级
ad93d8de
隐藏空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
26 行增加
和
0 行删除
+26
-0
DateUtils.java
src/main/java/com/sfa/common/core/utils/DateUtils.java
+26
-0
没有找到文件。
src/main/java/com/sfa/common/core/utils/DateUtils.java
浏览文件 @
f98856ca
...
...
@@ -6,8 +6,10 @@ import java.lang.management.ManagementFactory;
import
java.text.ParseException
;
import
java.text.SimpleDateFormat
;
import
java.time.*
;
import
java.util.ArrayList
;
import
java.util.Calendar
;
import
java.util.Date
;
import
java.util.List
;
/**
* 时间工具类
...
...
@@ -198,4 +200,28 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils {
// 计算给定日期所在周数(从 1 开始)
return
(
daysSinceFirstDay
+
firstDayWeekday
)
/
7
+
1
;
}
/**
* 计算时间间隔,如果时间间隔大于4天,就拆分成4天的时间间隔
* @param startDate
* @param endDate
* @return
*/
public
static
List
<
Date
[]>
splitTimeInterval
(
Date
startDate
,
Date
endDate
)
{
List
<
Date
[]>
intervals
=
new
ArrayList
<>();
if
(
startDate
==
null
||
endDate
==
null
)
{
return
intervals
;
}
long
daysBetween
=
(
endDate
.
getTime
()
-
startDate
.
getTime
())
/
(
1000
*
60
*
60
*
24
);
if
(
daysBetween
<=
4
)
{
intervals
.
add
(
new
Date
[]{
startDate
,
endDate
});
}
else
{
Date
midDate
=
new
Date
(
startDate
.
getTime
()
+
4
*
24
*
60
*
60
*
1000
);
intervals
.
add
(
new
Date
[]{
startDate
,
midDate
});
intervals
.
addAll
(
splitTimeInterval
(
new
Date
(
midDate
.
getTime
()
+
1000
),
endDate
));
}
return
intervals
;
}
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论