关于数组 报错但是可以运行
程序代码:
public class arrarys { int a[] = new int[]{1,2,3,4,5,6,7,8}; int b[] = new int[]{9,10,11,12,13}; public static void main(String[] arg) { arrarys s = new arrarys(); s.print1(); s.print2(); s.print3(); s.print4(); } void print1() { for(int i=0;i<a.length;i++) { System.out.println("a["+i+"]= " +a[i]); //变化的数据表示有些不懂 } System.out.println("数组啊的长度为: "+a.length); } void print2() { for(int i=0;i<b.length;i++) { System.out.println("b["+i+"]= "+b[i]); } System.out.println("数组b的长度为: "+b.length); } void print3() { for(int i=0;i<a.length;i++) { System.out.println("c["+i+"]= "+(a[i]*b[i])); } System.out.println("数组c的长度为: "+b.length); } void print4() { for(int i=0;i<b.length;i++) { System.out.println("d["+i+"]= "+(a[i]*a[i]*b[i]-b[i])); } } }
a[0]= 1
a[1]= 2
a[2]= 3
a[3]= 4
a[4]= 5
a[5]= 6
a[6]= 7
a[7]= 8
数组啊的长度为: 8
b[0]= 9
b[1]= 10
b[2]= 11
b[3]= 12
b[4]= 13
数组b的长度为: 5
c[0]= 9
c[1]= 20
c[2]= 33
c[3]= 48
c[4]= 65
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 5
at arrarys.print3(arrarys.java:33)
at arrarys.main(arrarys.java:10)
报错为什么 ?