简短介绍:我正在构建一个游戏,怪物在顶部生成,并通过一条路径移动,到达需要移除/摧毁/删除的点。但我似乎无法删除怪物对象。
for (Monster i : Monstre)
{
this.add(i); //adds monster to JPanel
if(i.monstery > 50 && i.monsterx > 50){ //check if monster have reached end point
this.remove(i); //Should remove Object from the JPanel ?
i = null; //Sets object too null
Monstre.remove(i); //Removes object from arrayList "Monstre".
}else{
//Update the monsters bounds
以上从JPanel中删除了对象,看起来一切都很好。但是当我打电话时,System.out.println(Monstre.size());
我得到了越来越多的怪物产生,如果增加怪物产生率,程序最终开始变慢,因为怪物数组列表中的怪物数量超过 9000,并且永远不会减少。我正在寻找的是一种在游戏运行时删除这些对象的方法。