我需要实现功能
int secondsTillNextSaturday(LocalDateTime start);
这与它说的完全相同,计算到下周六相对于开始时间的秒数(如果开始已经是星期六,那么它应该返回到下一个星期六之后的秒数)。
例如,对于27.04.2017 00:00:00(星期四),它应该返回2 * 24 * 60 * 60。
答案 0 :(得分:9)
可以使用java 8 time api轻松完成:
public long secondsTillNextSaturday(LocalDateTime start) {
LocalDate nextSaturday = start.toLocalDate().with(TemporalAdjusters.next(DayOfWeek.SATURDAY));
return ChronoUnit.SECONDS.between(start, nextSaturday.atStartOfDay());
}