我得到了一个包含我创建的类的链接列表,但每次我向列表中添加新实例时,列表中的所有其他元素都会获取相同的数据。
这是我列表中的类(class)。
public class ZitEntity
{
private int mSize;
public boolean poped;
private boolean done;
private Canvas can;
private int count;
private static Vector2D mPosition;
private int ms;
private Bitmap Zit;
public ZitEntity(int a, int b)
{
mSize = 20;
poped = false;
done = true;
ms = 3;
mPosition = new Vector2D(a,b);
Zit = Bitmap.createBitmap(mSize*2, mSize*2, Bitmap.Config.ARGB_8888);
}
在第二节课中,我创建了一个列表。
private LinkedList<ZitEntity> entityList;
并在构造函数中启动列表。
entityList = new LinkedList<ZitEntity>();
这是我向列表添加新实例的位置:
private void createEntity()
{
Random generator = new Random();
int a = generator.nextInt(10);
if(a==5)
{
int x = generator.nextInt(ZitGame.height-60)+20;
int y = generator.nextInt(ZitGame.width-120)+20;
entityList.add(new ZitEntity(x,y));
Log.v("add entity", "new entity");
}
}
最佳答案
您将 mPosition 声明为静态,因此每次您都会获得每个项目的最新位置
关于Java,类的多个实例重置为最新创建的实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10270706/