Java去除两个日期之间的周末,只算工作日(传递String对象)
@SuppressWarnings("deprecation")
public int getDutyDays(String strStartDate,String strEndDate) {
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
Date startDate=null;
Date endDate = null;
try {
startDate=df.parse(strStartDate);
endDate = df.parse(strEndDate);
} catch (ParseException e) {
System.out.println("非法的日期格式,无法进行转换");
e.printStackTrace();
}
int result = 0;
while (startDate.compareTo(endDate) <= 0) {
if (startDate.getDay() != 6 && startDate.getDay() != 0)
result++;
startDate.setDate(startDate.getDate() + 1);
}
return result;
}
嗯,貌似网上有一个比较简单的算法,可以去找一下 4 楼 ljh_uncle 2011-12-30 Joda-Time,一个开源项目