谢谢

解决方案 »

  1.   

    开始时间每个月不都是1号吗?有什么好获得的?
    这里是用来获得每个月的截止时间的
    Calendar calendar = Calendar.getInstance();
    calendar.setTime(new Date());
    int index = calendar.get(Calendar.MONTH);
    int[][] days = new int[][] {
    { 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 },
    { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 } };
    int year = calendar.get(Calendar.YEAR);
    boolean leap = year % 4 == 0 && (year % 400 == 0 || year % 100 != 0);
    int curLast = days[leap?0:1][index];
    int preLast = days[leap?0:1][index-1];
    System.out.println(curLast);
    System.out.println(preLast);
      

  2.   

    Calendar calendar = Calendar.getInstance();//本月的截止日期(最后一号)
    calendar.setTime(new Date());
    calendar.getMaximum(Calendar.DAY_OF_MONTH);
    //上月的截止日期(最后一号)
    int month=calendar.get(Calendar.MONTH);
    calendar.set(Calendar.MONTH,month-1);
    calendar.getMaximum(Calendar.DAY_OF_MONTH);
      

  3.   

    //上月的截止日期(最后一号) 
    int month=calendar.get(Calendar.MONTH); 
    calendar.set(Calendar.MONTH,month-1); 
    calendar.getMaximum(Calendar.DAY_OF_MONTH);执行calendar.set(Calendar.MONTH,month-1); 后,
    取出calendar.get(Calendar.MONTH)的结果是1,表示二月份,但这样取出来的最大日期还是31,不明白.
      

  4.   

    import java.util.Date;public class test {

    public static void main(String[] args) {
    Date firstDay = new Date(109,1,1);  // 09年二月第一天
    Date lastDay = new Date(109,2,0); // 09年二月最后一天

    System.out.println(firstDay.toString());
    System.out.println(lastDay.toString());
    }
    }
      

  5.   

    import java.util.Date;public class test {

    public static void main(String[] args) {
    Date firstDay = new Date(109,1,1);  // 09年二月第一天
    Date lastDay = new Date(109,2,0); // 09年二月最后一天

    System.out.println(firstDay.toString());
    System.out.println(lastDay.toString());
    }
    }
      

  6.   

    哦,不好意思,这么改下吧
    getMaximum 改成getActualMaximum
      

  7.   

    得到上月的截止日期(最后一号),这样也可以。       // 上月的截止日期(最后一号) 
           calendar.add(Calendar.MONTH, -1);
           int monthday = calendar.getActualMaximum(Calendar.DAY_OF_MONTH);
      

  8.   

    http://xinzhiz.javaeye.com/blog/151681