标题: 关于四维数组的错误求解 [打印本页] 作者: 李春阳 时间: 2012-6-4 14:56 标题: 关于四维数组的错误求解 class FourD_Demo {
public static void main (String args[]){
int FourD[][][][]=new int [2][3][4][5];
int i,j,k,l;
for (i=0;i<2;i++)
for (j=0;i<3;j++)
for (k=0;i<4;k++)
for (l=0;i<5;l++)
FourD[i][j][k][l]=i*j*k*l;
for (i=0;i<2;i++){
for (j=0;i<3;j++){
for (k=0;i<4;k++){
for (l=0;i<5;l++)
System.out.print(FourD[i][j][k][l]+" ");
System.out.println();
}
System.out.println();
}
System.out.println();
}
}
}
为什么我一运行就是错误:
Exception in thread "main" java.lang.ArrayIndexOutofBounds Exception: 5 at FourDMatrix.main(FourDMatrix.java:9)作者: 梁小波 时间: 2012-6-4 15:00
你的每层循环都判断i<0?
写错了吧,copy惹的祸呀。也就是所i=0;l++到了6的时候,就会报越界异常了作者: 张洁 时间: 2012-6-4 15:03
你这个问题主要是这四句:
for (i=0;i<2;i++)
for (j=0;i<3;j++)
for (k=0;i<4;k++)
for (l=0;i<5;l++)
第一:没有括号
第二:这句话的意思是,只要i<5 l就自加1,而i是=1的,就是只要不加限制,l会加到无穷大,所以才会ArrayIndexOutofBounds作者: 郭宁 时间: 2012-6-4 15:05
LZ跟i过不去啊~ 每层都是 for(;i<0;),不知LZ想实现什么功能呢 作者: 孟浩然 时间: 2012-6-4 15:18
这个类要实现什么功能哦