Java – last working day of last month and localdate
•
Java
public static String getLastWorkingDayOfPrevIoUsMonth() {
public static String getLastWorkingDayOfPrevIoUsMonth() {
LocalDate lastDayOfCurrentMonth = LocalDate.Now().with(TemporalAdjusters.lastDayOfMonth());
LocalDate lastWorkingDayOfMonth;
switch (DayOfWeek.of(lastDayOfCurrentMonth.get(ChronoField.DAY_OF_WEEK))) {
case SATURDAY:
lastWorkingDayOfMonth = lastDayOfCurrentMonth.minusMonths(1);
break;
case SUNDAY:
lastWorkingDayOfMonth = lastDayOfCurrentMonth.minusMonths(2);
break;
default:
lastWorkingDayOfMonth = lastDayOfCurrentMonth;
}
return getFormattedDate(lastWorkingDayOfMonth);
}
The above is the last working day of this month How to adjust the last working day of the previous month?
Solution
Sometimes a simple approach is better than a smart one:
LocalDate lastWorkingDayOfMonth = LocalDate.Now().withDayOfMonth(1);
do {
lastWorkingDayOfMonth = lastWorkingDayOfMonth.minusDays(1);
} while (lastWorkingDayOfMonth.getDayOfWeek() == DayOfWeek.SATURDAY ||
lastWorkingDayOfMonth.getDayOfWeek() == DayOfWeek.SUNDAY);
The content of this article comes from the network collection of netizens. It is used as a learning reference. The copyright belongs to the original author.
THE END
二维码
