2017-02-17 111 views
2

我得到ArrayIndexOutOfBoundsException这个代码,有人可以告诉我我做错了什么吗?Java矩阵的异常

public class Test { 
    public static void main(String args[]) { 

     int[][] matrix = {{1,2,3,4}, 
        {1,2,3,4}}; 

     for (int i = 0; i < matrix.length; i++) { 
      for (int j = 0; i < matrix[i].length; j++) { 
       System.out.print(matrix[i][j]); 
      } 
     } 
    } 
} 
+0

我不知道! – aQaddoumi

回答

5
for (int j = 0; i < matrix[i].length; j++) { 

您正在使用内循环的错误归纳变量比较。它应该是这样的:

for (int j = 0; j < matrix[i].length; j++) { 
//   ^
+0

非常感谢!我想我花了一个小时寻找解决方案 – aQaddoumi

+1

有时你只需要另一套眼睛。发生在我们身上。 – cdhowie

0

基本上,在内部循环中,应该有“j”而不是“我”。

0

如果不是作业,Java可以让你的生活变得更简单。

int[][] matrix = {{1,2,3,4}, 
       {1,2,3,4}}; 
System.out.println(Arrays.deepToString(matrix));