2012-12-30 79 views
-5
String filelist1[]; 
filelist1 = null; 

for (String s : step1) { 
    if(s != null || !"".equals(s)) { 
     on = s.split(":"); 

     if("FILE".equals(on[0])) { 
      filelist1[i] = on[1]; 
      i++; 
     } 
    } 
} 

爲什麼會造成NullPointerException?我確定這與filelist1[i] = on[1];有關,甚至進一步說它只是filelist1陣列。爲什麼在這個世界上這導致java.lang.NullPointerException?

+1

想要獲得更快的幫助,請發佈[SSCCE](http://sscce.org/)。 –

+6

'filelist'爲空,因此當您嘗試將某個值設置爲其中的某個索引時,會引發NullPointerException。 – Vulcan

+1

爲什麼在世界上你試圖設置一些默認情況下初始化爲'null' *爲'null'的東西? –

回答

7
filelist1 = null; 

然後嘗試設置filelist1[i] = ... ......這是null,它不是一個數組中!

改爲使用ArrayList

ArrayList<String> filelist1 = new ArrayList<String>(); 

... 
filelist1.add(on[1]); 
+0

非常感謝! –