Arrays.fill()方法导致异常

时间:2012-09-24 22:42:28

标签: java

现在我无法使用空格填充数组。每当我使用数组填充方法时,我都会遇到异常。现在我排除了剩下的代码,只包括导致问题的代码。这里是。注意我是java的初学者,所以如果这个问题太简单,请不要生气。我在这里搜索过,找不到任何东西。

public class board 
{       
    public static void main(String args[])
    {
        char board [][] = new char  [6][7]; 
        int column=0; 
        int row=0;

        java.util.Arrays.fill(board,' ');
    }
}

例外说

  

线程“main”中的异常java.lang.ArrayStoreException:
   java.lang.Character中
   在java.util.Arrays.fill(Arrays.java:2710)
   在java.util.Arrays.fill(Arrays.java:2685)
   在board.main(board.java:26)

2 个答案:

答案 0 :(得分:14)

Arrays.fill需要一个单维数组,你传递的是锯齿状数组。

相反,这样做:

for(int x=0;x<board.length;x++)
    for(int y=0;y<board[x].length;y++)
        board[x][y] = ' ';

或者这个:

for(int x=0;x<board.length;x++)
    Arrays.fill( board[x], ' ' );

答案 1 :(得分:2)

FROM JAVA API ArrayStoreException信息: 抛出此异常表示已尝试将错误类型的对象存储到数组中。

Arrays.fill(); 

方法采用单维数组作为参数,你传递的是二维数组,因此异常