public static LocalDate[] overLappingDay(LocalDate i1Start, LocalDate i1End, LocalDate i2Start, LocalDate i2End) {
if (i1End.isBefore(i1Start) || i2End.isBefore(i2Start)) {
return null;
} else {
if (i1End.isBefore(i2Start) || i2End.isBefore(i1Start)) {
// no overlap
return null;
} else {
LocalDate laterStart = Collections.max(Arrays.asList(i1Start, i2Start));
LocalDate earlierEnd = Collections.min(Arrays.asList(i1End, i2End));
return new LocalDate[] {laterStart, earlierEnd};
}
}
}
JAVA 获取两个时间段的重叠交集区间
于 2022-12-05 17:29:48 首次发布