日期:2014-05-19  浏览次数:20666 次

求助、、哪位高人可以帮我实现一个方法、根据某年某月算出该月除了星期六星期天的天数,也就是工作日的天数
如题、请求高人帮忙~~!、、我在写毕业设计、、需要算一下员工需要签到的天数。。。这一点卡着了

------解决方案--------------------
给个思路吧
先用calendar算出这个月,有多少天。
在查出该月第一天是星期几。继而可以根据天数算出 有多少个星期六星期天。


------解决方案--------------------
用Calendar自己算一下就可以了
for example
Java code

import java.util.*;
import java.text.*;
public class Test {
    public static void main(String[] args) throws Throwable {
        String s = "2012-04-20";
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        Date d = sdf.parse(s);
        Calendar c = Calendar.getInstance();
        c.setTime(d);
        int min = c.getActualMinimum(Calendar.DAY_OF_MONTH);
        int max = c.getActualMaximum(Calendar.DAY_OF_MONTH);
        c.set(Calendar.DAY_OF_MONTH, min);
        int workDays = 0;
        for (int i=0; i<max; i++) {
            int wd = c.get(Calendar.DAY_OF_WEEK);
            if (wd != Calendar.SATURDAY && wd != Calendar.SUNDAY) {
                workDays++;
            }
            c.add(Calendar.DAY_OF_MONTH, 1);
        }

        System.out.printf("work days = %d\n", workDays);
    }
}