如何使用 Joda-Time 获得下一个星期五API。
LocalDate
今天是 today
。在我看来,您必须决定是在本周的星期五之前还是之后。看这个方法:
private LocalDate calcNextFriday(LocalDate d) {
LocalDate friday = d.dayOfWeek().setCopy(5);
if (d.isBefore(friday)) {
return d.dayOfWeek().setCopy(5);
} else {
return d.plusWeeks(1).dayOfWeek().setCopy(5);
}
}
是否可以缩短或使用oneliner?
PS:请不要建议我使用 JDK 日期/时间的东西。 Joda-Time 是一个更好的 API。
最佳答案
java.time
使用 java.time Java 8 及更高版本 ( Tutorial ) 中内置的框架,您可以使用 TemporalAdjusters
获取 next或 previous day-of-week .
private LocalDate calcNextFriday(LocalDate d) {
return d.with(TemporalAdjusters.next(DayOfWeek.FRIDAY));
}
关于java - 时间:下周五怎么过?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1636038/