Java类型不匹配 - 无法从构造函数中的int [] []错误转换

时间:2012-07-25 12:43:37

标签: java

我的构造函数是

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 [] []转换为图 令牌上的语法错误:错位的构造                          预期变量声明符

1 个答案:

答案 0 :(得分:9)

你必须像这样创建矩阵:

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

或者不那么脏的方式:将矩阵结构分散在几行上:

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

new Figure(matrix, Color.ORANGE);