String s="200304";
int i=Integer.parseInt(s);    //i=200304;
i++;                          // increase a month;
int temp=i%100;
if(temp>12) 
{
  i+=100;
  i-=12;
}
s=""+i;
//OK!

解决方案 »

  1.   

    import java.util.*;
    import java.text.SimpleDateFormat;public class testDate
    {
    public testDate(){
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
            Calendar cal = Calendar.getInstance();
            Date LDate=cal.getTime();
    System.out.println("First date is:"+sdf.format(LDate));
            cal.add(Calendar.MONTH,1);
            Date FDate=cal.getTime();
            System.out.println("Last date is:"+sdf.format(FDate));
    }
    public static void main(String[] args) 
    {
    testDate test=new testDate();
    }
    }
      

  2.   

    楼上的你的代码错了吧!!!应该是这样的吧!!String s="200304";int i=Integer.parseInt(s);    //i=200304;
     
    i++;                          // increase a month;int temp=i%1000;if(temp==12) 
    {
      i+=100;
      i-=11;
    }
    if(temp<12)
    {  
       i+=1;
     }  s=""+i;
      

  3.   

    哦?错了吗?我测试过似乎没有问题哦。为什么那样不行呢?你这样,如果i=200304 执行后不是200306了吗?还有temp=i%1000;什么意思。不解!赐教!