写一个查询上个月第二个工作日的java算法
时间: 2024-02-13 15:05:58 浏览: 117
以下是一个查询上个月第二个工作日的Java算法示例:
```java
import java.time.LocalDate;
import java.time.DayOfWeek;
public class LastMonthSecondWorkingDay {
public static void main(String[] args) {
LocalDate today = LocalDate.now();
LocalDate lastMonth = today.minusMonths(1);
LocalDate secondLastMonthDay = lastMonth.withDayOfMonth(2);
DayOfWeek dayOfWeek = secondLastMonthDay.getDayOfWeek();
if (dayOfWeek == DayOfWeek.SATURDAY) {
secondLastMonthDay = secondLastMonthDay.plusDays(2);
} else if (dayOfWeek == DayOfWeek.SUNDAY) {
secondLastMonthDay = secondLastMonthDay.plusDays(1);
}
System.out.println("上个月第二个工作日是:" + secondLastMonthDay);
}
}
```
该算法的实现思路是:
1. 获取当前日期。
2. 获取上个月的日期。
3. 设置日期为上个月的第二天。
4. 判断该日期是否为周末,如果是,将日期调整到下一个工作日。
5. 输出结果。
需要注意的是,该算法中判断周末的方式是使用了Java 8中的DayOfWeek枚举类型,需要确保使用的Java版本支持该枚举类型。
阅读全文