7

现在我无法用空格填充数组。每当我使用数组填充方法时,我都会遇到异常。现在我排除了其余的代码,只包括了导致问题的代码。这里是。注意我是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,' ');
    }
}

例外说

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


4

2 回答 2

16

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], ' ' );
于 2012-09-24T22:44:42.503 回答
2

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

Arrays.fill(); 

方法将单维数组作为参数,您传递的是二维数组,因此异常

于 2012-09-24T22:46:51.473 回答