将LocalDate复制到java.time中日历的另一个位置

时间:2018-09-19 07:50:53

标签: java java-time

我想将日历中的某天(从某个时间段)复制到另一个地方。但是没有什么限制。我将通过一些示例来展示它。

假设我要复制6月5日(星期三,变量dayToCopy)。这个星期从6月3日开始(可变来源WeekStart)。目标星期几是12月10日(星期一,变量targetWeekStart)。如我们所见,由于源日是星期三,所以targetDay应该在12月12日在这里。

这是最简单的部分(可以在此处使用TemporalAdjuster)。 但是问题是当我要复制时,例如6月12日(来源周仍是6月3日)。现在targetDay应该是12月19日。我不知道该怎么办,因为TemporalAdjuster仅将其匹配到下周。有人可以帮我吗?

LocalDate convertTemplateTimeToRealTime(LocalDate dayToCopy, LocalDate sourceWeekStart, LocalDate targetWeekStart) {

        long daysBetweenSourceWeekStartAndDayToCopy = DAYS.between(sourceWeekStart, dayToCopy.toLocalDate());

//HERE SHOULD BE THE SOLUTION
    }

1 个答案:

答案 0 :(得分:3)

如果我没有误会,请将目标日期设置为SetProperty(ref backingField, value)

链接: Documentation of LocalDate.plusDays