当res=6时时怎么执行的,先是
carCurrentStatus ="The car was repaired quickly!!\n";,
然后呢,
跟着又
carCurrentStatus ="The car has runned  "+res+"  miles.";public class CodeForTest{  public static void main(String[] args){    int i =0,res =0;    //String for storage�
    String carStatus[] =new String[9];
    String carCurrentStatus ="";    for(i=0;i<9;i++){      res++;
  carCurrentStatus ="The car has runned  "+res+"  miles.";
      if(res!=5){
        if(res==6){
          carCurrentStatus ="The car was repaired quickly!!\n";
         }
       }
       else{
             carCurrentStatus ="The car was broken down on  "+res+"  miles\n";
       }
       carStatus[i] =carCurrentStatus;
     }
     for(i=0;i<carStatus.length;i++){
          System.out.println(carStatus[i]);
     }   
    }
}

解决方案 »

  1.   

    就是,carCurrentStatus被二次赋值,旧值被覆盖掉了
      

  2.   

    D:\j2sdk1.4.2_04\bin>java CodeForTest
    The  car  has  runned      1    miles.
    The  car  has  runned      2    miles.
    The  car  has  runned      3    miles.
    The  car  has  runned      4    miles.
    The  car  was  broken  down  on      5    milesThe  car  was  repaired  quickly!!The  car  has  runned      7    miles.
    The  car  has  runned      8    miles.
    The  car  has  runned      9    miles.shangqiao(伤桥) 你好,你的程序编译结果如上
    缺少The  car  has  runned      6    miles.这一项PS:我想将String  carStatus[]  =new  String[9];中得9改成10,再修改一点就可以了但若carStatus[]只能是9,该如何改,望高手指导(主要是要学习改错的思路和方法) 
      

  3.   

    就是,carCurrentStatus被二次赋值,旧值被覆盖掉了;另外,你是指carCurrentStatus在res=6时实现"The car was repaired quickly!!"时,可以这样改动一下也行:
    for(i=0;i<9;i++){
          res++;
             carCurrentStatus="The car was repaired quickly!!\n";        if(res==5)  carCurrentStatus ="The car was broken down on  "+res+"  miles\n";
         if (res!=5 && res!=6)   carCurrentStatus ="The car has runned  "+res+"  miles.";
                    carStatus[i] =carCurrentStatus;
         }
      

  4.   

    djkhym(hym) ,你好,
    按照你的代码,当res=1.2.3.4.7.8.9时 carCurrentStatus ="The car has runned  "+res+"  miles."; 有效
    当res=5时,carCurrentStatus ="The car was broken down on  "+res+"  miles\n";有效
    当res=6时,carCurrentStatus="The car was repaired quickly!!\n";有效,但是,   The  car  has  runned      6    miles就不会输出了我试了一下,可以再加一条:
    if(res==6) carCurrentStatus ="The car was repaired quickly!!"+"The car has runned"+res+"miles.";
    删除carCurrentStatus="The car was repaired quickly!!\n";这一句