月末指的是每个月的最后一天,如果正好是在周六、周日,则往前顺延一天,

解决方案 »

  1.   

    String sdate = "20120105";
    DateFormat df = new SimpleDateFormat("yyyyMMdd");
    Date date = df.parse(sdate);
    Calendar cal = Calendar.getInstance();
    cal.setTime(date);
    String[] colname = {
                    "日", "一", "二", "三", "四", "五", "六"
                };
    int dayOfWeek = cal.get(Calendar.DAY_OF_WEEK);
    System.out.println("今天是星期"+colname[dayOfWeek-1]);
    int lastDayOfMonth = cal.getActualMaximum(Calendar.DAY_OF_MONTH);
    int nowDay = cal.get(Calendar.DAY_OF_MONTH);
    if(nowDay == lastDayOfMonth){
    System.out.println("月末");
    }
      

  2.   

    请参考下以下代码
            String date="20110127";
            Calendar calendar=Calendar.getInstance();
            calendar.setTime(new SimpleDateFormat("yyyyMMdd").parse(date));
            int dayOfWeek=calendar.get(Calendar.DAY_OF_WEEK);
            int dayOfMonth=calendar.get(Calendar.DAY_OF_MONTH);
            System.out.println(dayOfWeek);
            System.out.println(dayOfMonth);
            int friday=5;
            int endMonth=calendar.getActualMaximum(Calendar.DAY_OF_MONTH);
            System.out.println(friday);
            System.out.println(endMonth);
            
            if(friday==dayOfWeek){
             System.out.println("今天星期五!");
            }else{
             System.out.println("今天不是星期五,明天接着上班!");
            }
            if(endMonth==dayOfMonth){
             System.out.println("今天月末!");
            }else{
             System.out.println("今天还无到月末!");
            }