0

私のコンストラクターは

public class Figure{
    int[][] x;
    Color y;
    public Figure(int[][] x , Color y){
        this.x=x;
        this.y=y;
    }

そして私は次の方法でオブジェクトを初期化しています:

Figure s = new Figure({{0,1,1},{1,1,0}},Color.ORANGE);

次のエラーが発生します。

型の不一致-int[][]からFigureに変換できませんトークンの構文エラー:誤って配置された構成変数宣言子が代わりに必要です

4

1 に答える 1

9

次のようなマトリックスを作成する必要があります。

new Figure(new int[][]{{0,1,1}, {1,1,0}},Color.ORANGE);

または、それほど汚くない方法:マトリックス構造を2、3行に広げます。

int[][] matrix = new int[2][];
matrix[0] = new int[]{0,1,1};
matrix[1] = new int[]{1,1,0};

new Figure(matrix, Color.ORANGE);
于 2012-07-25T12:44:54.143 に答える