java.util.Calendar cal = java.util.Calendar.getInstance();
   cal.add( cal.MONTH,1 );
   cal.set(cal.DATE,1);
   cal.add(cal.DATE,-1);   java.text.SimpleDateFormat df = new java.text.SimpleDateFormat("yyyy-MM-dd");
   System.out.println(df.format( cal.getTime() ));

解决方案 »

  1.   

    private static String getLastDate(String date)
      {
        SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd");
        Date dt=null;
        try
        {
          dt = format.parse(date);
        }
        catch (ParseException ex)
        {
          ex.printStackTrace();
        }
        if (dt==null) return null;
        Calendar cal=Calendar.getInstance();
        cal.setTime(dt);
        int days=cal.getActualMaximum(Calendar.DAY_OF_MONTH);
        cal.set(Calendar.DAY_OF_MONTH,days);
        String result=format.format(cal.getTime());
        System.out.println(""+result);
        return result;
      }调用:getLastDate("2005-10-11");
      

  2.   

    int  days=cal.getActualMaximum(Calendar.DAY_OF_MONTH);  Good!