我做了tileList.size()
的System.out.println
和它返回成千上萬的int迅速上升隨着時間的推移。我正在做一個Java applet,它創建tile併爲ArrayList中的每個點隨機生成對象變量。我的ArrayList是增加成千上萬個對象本身
我不知道爲什麼會這樣,但我可以定期清除數組列表,但我不應該。
col = 20;
row = 10;
public void createTiles()
{
for (int i = 0; i <= col; i++)
{
for (int j = 0; j <= row; j++)
{
if (r.nextInt(100) >= slides/2)
{
tileList.add(new Tile(i * 64, j * 64, this.getHeight(), this.getWidth(), false, 0, false));
}
if (r.nextInt(100) <= slides/2)
{
tileList.add(new Tile(i * 64, j * 64, this.getHeight(), this.getWidth(), true, 0, false));
}
if (r.nextInt(500) <= 1)
{
tileList.add(new Tile(i * 64, j * 64, this.getHeight(), this.getWidth(), false, 0, true));
}
}
}
}
在那裏被從
public void paint(Graphics g)
{
createTiles();
generatePanel();
createSnowballs();
createFish();
penguinCollision();
drawTiles(g);
bearAI();
bearCollision();
drawSnowballs(g);
drawFish(g);
drawPenguin(g);
drawHunger(g);
drawHungerBar(g);
drawBear(g);
if (hungerAmount <= 0)
drawGameover(g);
}
你不需要空的'else'塊。你可以把這些留下。 – user2357112
你打電話給這個/你在哪裏?我懷疑你的調用方法被稱爲很多。堅持一個斷點,並通過...追蹤它的使用... –
它是從我的繪畫方法調用,這是爲什麼? – user1920076