public class A { public static void main(String[] args) { String a1="1,2,3"; String a2[]=a1.split(","); String a3[]=new String[a2.length]; int i=0; while(a2[i]!=null) { switch(Integer.parseInt(a2[i])) { case 1:a3[i]="image1";break; case 2:a3[i]="image2";break; case 3:a3[i]="image3";break; default:a3[i]=null; } System.out.println(a3[i]); i++;
String a1="1,2,3";
String a2[]=a1.split(",");
String a3[]=new String[a2.length];
int i=0;
while(a2[i]!=null)
{
switch(Integer.parseInt(a2[i]))
{
case 1:a3[i]="image1";break;
case 2:a3[i]="image2";break;
case 3:a3[i]="image3";break;
default:a3[i]=null;
}
System.out.println(a3[i]);
i++;
}
System.out.println("ok!");
}
}
现在又有java.lang.ArrayIndexOutOfBoundsException: 3
Exception in thread "main"
a2[i]!=null怎么会出错阿?
当你判断到a2[3]的时候,超出了数组的元素个数。
可以用数组的长度作为判断条件。