A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 李春阳 中级黑马   /  2012-6-4 14:56  /  1177 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

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)

评分

参与人数 1技术分 +1 收起 理由
袁錦泰 + 1

查看全部评分

4 个回复

倒序浏览
你的每层循环都判断i<0?
写错了吧,copy惹的祸呀。也就是所i=0;l++到了6的时候,就会报越界异常了
回复 使用道具 举报
你这个问题主要是这四句:
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
回复 使用道具 举报
LZ跟i过不去啊~  每层都是  for(;i<0;),不知LZ想实现什么功能呢
回复 使用道具 举报
这个类要实现什么功能哦
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马