-1

クラスFIELDのコンストラクターで作成したオブジェクトの配列を出力したいのですが、update()メソッドでクラスConsoleUIに出力したいです。

ここにコンストラクタがあります

public Field(int rowCount, int columnCount, int mineCount) {
    this.rowCount = rowCount;
    this.columnCount = columnCount;
    this.mineCount = mineCount;
    tiles = new Tile[rowCount][columnCount];
    generate();
}

更新方法はこちら。それは間違っているかもしれません。どうにかして Field to Tile をオーバータイプする必要があると思います。

public void update() {  
    int row, column;
    System.out.println("   0 1 2 3 4 5 6 7 8");   
    for (row=0; row < field.getRowCount(); row++) {
        switch(row){  
           case 0:System.out.print("A ");break;
           case 1:System.out.print("B ");break;
           case 2:System.out.print("C ");break;
           case 3:System.out.print("D ");break;
           case 4:System.out.print("E ");break;
           case 5:System.out.print("F ");break;
           case 6:System.out.print("G ");break;
           case 7:System.out.print("H ");break;
           case 8:System.out.print("I ");break;
        }
        for (column=0; column < field.getColumnCount() ; column++) {
            System.out.print(" ");
          int r;
          int c;
            Tile t = (Tile) field[r][c];
            for (Field field : t.getState());
            System.out.print(field[row][column]);
        }
        System.out.println();
    }   
}
4

1 に答える 1

0

あなたの質問を正しく理解できたら、Field クラスに get メソッドを作成してください。

public Tile getTile(int row, int col)
{
    return tiles[row][col];
}

次に、更新メソッドを使用してクラスで Field オブジェクトを作成します

Field field = new Field();

そして電話する

field.getTile(row,col);

タイルが必要なときはいつでも。

それは、あなたが何を求めているかを理解した場合です。

于 2013-03-05T17:47:52.733 に答える