java如何计算工作日
时间: 2024-04-29 11:24:13 浏览: 205
Java计算工作日
Java中计算工作日的方法如下:
1. 定义一个方法,传入两个日期参数(开始日期和结束日期)。
2. 创建一个Calendar对象,并将开始日期设置为Calendar的日期。
3. 判断开始日期是否为工作日,如果不是,则将日期加一天,直到开始日期为工作日。
4. 创建一个int类型的变量workDays,用于记录工作日的天数。
5. 循环遍历开始日期和结束日期之间的日期,如果该日期为工作日,则将工作日计数器加1。
6. 返回工作日天数。
以下是示例代码:
```java
import java.util.Calendar;
import java.util.Date;
public class WorkDaysCalculator {
public static int calculateWorkDays(Date startDate, Date endDate) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(startDate);
int workDays = 0;
while (calendar.getTime().before(endDate) || calendar.getTime().equals(endDate)) {
if (isWorkDay(calendar)) {
workDays++;
}
calendar.add(Calendar.DATE, 1);
}
return workDays;
}
private static boolean isWorkDay(Calendar calendar) {
int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);
return dayOfWeek != Calendar.SATURDAY && dayOfWeek != Calendar.SUNDAY;
}
}
```
可以使用以下代码进行测试:
```java
public static void main(String[] args) throws ParseException {
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
Date startDate = dateFormat.parse("2021-09-01");
Date endDate = dateFormat.parse("2021-09-30");
int workDays = WorkDaysCalculator.calculateWorkDays(startDate, endDate);
System.out.println("工作日天数:" + workDays);
}
```
输出结果为:
```
工作日天数:22
```
阅读全文