如何从构造函数将数组参数传递给对象?

时间:2017-09-30 07:29:03

标签: java arrays maze

我需要从我创建的类中传递String[][]参数,例如:

public class Maze {

    String maze[][];
    int rows;
    int columns;
    int xStart;
    int yStart;

    public Maze(String xMaze[][], int xRows, int xColumns, int xxStart, int xyStart) {     
        maze = xMaze;
        rows = xRows;
        columns = xColumns;
        xStart = xxStart;
        yStart = xyStart;
    }

我需要在我的主类中调用String maze[][],但我知道这样做的唯一方法是将其称为null。我可以通过将其称为对象来初始化它的方式是什么?我的null示例如下。

static Maze maze = new Maze(null,0,0,0,0);

有没有办法调用String[][]而不仅仅是null?似乎这么简单的问题但我找不到答案。

3 个答案:

答案 0 :(得分:2)

Maze构造函数构建数组,删除数组参数并使用收到的行/列值:

public Maze(int xRows, int xColumns, int xxStart, int xyStart) {     
    maze = new String[xRows][xColumns];
    rows = xRows;
    columns = xColumns;
    xStart = xxStart;
    yStart = xyStart;
}

您不需要在构造函数中输入数组和数组大小。

答案 1 :(得分:0)

您可以创建String数组的实例并将其传递

String[][] ar = new String[2][3]; // initialize with appropriate size
Maze maze = new Maze(ar,0,0,0,0);

答案 2 :(得分:0)

Maze maze = new Maze(new String[2][2],0,0,0,0);