0

This is my code so far for creating bricks, and it works:

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;
    }
}

With this code I´m able to get one brick, but I´m quite sure that all my bricks now is on the same position. So I need help with how I write the positions(in my current code: 0,0) so that the bricks is displayed next to each other, in rows and columns.

Update:

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;
        }
    }
}
hpopiolkiewicz
  • 3,281
  • 4
  • 24
  • 36
Anna
  • 11
  • 2
  • 1
    Well what do you want the position to be instead of 0, 0? Perhaps `i, 0`? (So you have {0, 0}, {1, 0}, {2, 0}, {3, 0}, {4, 0}...) – Jon Skeet Feb 05 '16 at 11:20

1 Answers1

1

You can pass i to brick constructor:

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

It will look like this:

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

or:

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

It will look like this:

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

or:

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

It will look like this:

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

Assuming that first two constructor arguments are x and y axis of Brick matrix. It depends on what your Brick constructor looks like.

EDIT1: Answering to your question from comment:

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;
        }
    }
}

It will look like this:

OOOOO
OOOOO
OOOOO
OOOOO
OOOOO
hpopiolkiewicz
  • 3,281
  • 4
  • 24
  • 36