我正在制作一个 RPG 风格的程序,但我无法让我的宝藏对象阵列工作。我想保存我在阵列中找到的所有宝物,以便稍后打印出来。这是宝藏类的代码:
private static int x = 0;
Treasure treasureArray[] = new Treasure[20];
public void collectedTreasures(Treasure t){
treasureArray[x] = t;
x++;
}
在主程序中:
GoldTreasure t = new Coin();
hero1.setPoints(t.getCoin());
t.collectedTreasures(t);
宝物对象的创建是在无限循环中的一个开关内。当我打印出数组时,使用方法
public void printTreasures(){
for (int y=0 ; y<x ; y++){
System.out.print(treasureArray[y] + ", ");
对于数组中应该有的宝藏,我只会得到“null”。如果我在 t.collectedTreasures(t) 之后打印出数组,我会看到只有最后一个宝藏在那里,并且该对象之前的索引为空。我做错了什么?
是的,我是新手。对人好点。