7

現在、配列をスペースで埋めるのに問題があります。配列fillメソッドを使用するたびに、例外が発生し続けます。今のところ、残りのコードを除外し、問題の原因となるコードのみを含めました。ここにあります。私は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.lang.ArrayStoreException:
ボード のjava.util.Arrays.fill(Arrays.java:2685
)のjava.util.Arrays.fill(Arrays.java:2710)のjava.lang.Character 。 main(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(); 

メソッドはパラメーターとして単一の次元配列を取ります。2次元配列を渡すため、例外が発生します。

于 2012-09-24T22:46:51.473 に答える