0

到目前为止,这是我创建砖块的代码,它可以工作:

bricks = new Brick[5];     
this.createBricks(); 

private void createBricks(){
    for (int i = 0; i < 5; i++) {
         Brick brick = new Brick(0,0, Color.RED);  
         bricks[i] = brick;
    }
}

有了这段代码,我可以得到一块砖,但我很确定我现在所有的砖都在同一个位置。所以我需要帮助我如何编写位置(在我当前的代码中:0,0),以便砖块以行和列的形式彼此相邻显示。

更新:

Brick[][] bricks = new Brick[5][5];     
this.createBricks(); 

private void createBricks(){
    for (int i = 0; i < 5; i++) {
        for (int j = 0; j < 5; j++) {
            Brick brick = new Brick(i,j, Color.RED);  
            bricks[i][j] = brick;
        }
    }
}
4

1 回答 1

1

您可以传递i给砖构造函数:

private void createBricks(){
    for (int i = 0; i < 5; i++) {
         Brick brick = new Brick(i,0, Color.RED);  
         bricks[i] = brick;
    }
}

它看起来像这样:

OOOOO
-----
-----
-----
-----

或者:

private void createBricks(){
    for (int i = 0; i < 5; i++) {
         Brick brick = new Brick(0,i, Color.RED);  
         bricks[i] = brick;
    }
}

它看起来像这样:

O----
O----
O----
O----
O----

或者:

private void createBricks(){
    for (int i = 0; i < 5; i++) {
         Brick brick = new Brick(i,i, Color.RED);  
         bricks[i] = brick;
    }
}

它看起来像这样:

O----
-O---
--O--
---O-
----O

假设前两个构造函数参数是 Brick 矩阵的 x 和 y 轴。这取决于您的Brick构造函数的外观。

EDIT1:从评论中回答您的问题:

Brick[][] bricks = new Brick[5][5];     
this.createBricks(); 

private void createBricks(){
    for (int i = 0; i < 5; i++) {
        for (int j = 0; j < 5; j++) {
             Brick brick = new Brick(i,j, Color.RED);  
             bricks[i][j] = brick;
        }
    }
}

它看起来像这样:

OOOOO
OOOOO
OOOOO
OOOOO
OOOOO
于 2016-02-05T11:22:35.333 回答