使用嵌套for循环添加到多维数组

时间:2014-11-18 07:59:47

标签: java arrays multidimensional-array

好吧我正在创建一个Breakout游戏,我需要创建一个为每个砖块创建矩形对象的方法,这样我就可以实现命中检测,我已经有了一个方法,所以可以像这样绘制砖块: / p>

public void drawBricks(Graphics g)
 {
    g.setColor(brickColor);
    for(int i = 0; i<10; i++)
    {
        for(int a = 0; a<121; a+=30)
        {
            g.fillRect(x+(width*i)+(spacer*i), y +a, width, height);
            // spacer = 10, x and y = 5, width = 50, height = 20, if you need this...
        }    
    }


}

现在到了我无法弄清楚的部分。我想创建具有上面绘制的精确对应坐标的矩形对象,并将它们添加到多维数组,但我需要y从5开始,每次为每行增加30。这是我到目前为止: *此外我不确定这是否真的可行,所以如果你对我能做到的其他方式有所了解,请告诉我。

public void setBricks()
{
    for(int i= 0; i<10;i++)
    {
        for(int a=0; a<5; a++)
        {
            bricks[i][a] = new Rectangle(x+(width*i)+(spacer*i), y +a, width, height); 
        }                         // any ideas how to get each y ^ coordinate equal to the one above
    } // i need the int variables to stay at 10 and 5 because of the size of the array.
}

1 个答案:

答案 0 :(得分:0)

好吧,如果您希望y5开始并增加30,请使用5+a*30

public void setBricks()
{
    for(int i= 0; i<10;i++)
    {
        for(int a=0; a<5; a++)
        {
            bricks[i][a] = new Rectangle(x+(width*i)+(spacer*i), 5 + a*30, width, height); 
        }                         
    }
}