我有一个关于ArrayList中的ArrayList的问题。这是关于多个有多个产卵的世界。我想逐一检查每个世界,并将该世界的所有派生项保存在ArrayList中。最后,我有一个ArrayList,每个位置(每个位置都是一个世界)都有另一个ArrayList,其中包含该世界的派生。
如果我不知道会有多少个产卵场或世界,我该怎么做?我想到了这个:
只看一个世界:
public ArrayList<Location> Spawnpoints = new ArrayList<Location>();
//ArrayList containing all the spawns of this world).
寻找世界上的每一个产卵
Spawnpoints.add(new Location(spawnX , spawnY , spawnZ));
//Adding every spawn to the ArrayList spawnpoints.
因此,在我观察了一个世界后,我在ArrayList spawnpoints中填充了位置。现在,我想将ArrayList派生点添加到一个新的ArrayList世界中。之后,我将为下一个世界重复上面的代码,直到我拥有了所有的世界。
编辑。我认为它起作用了。当我只有名字的时候,我很难确定名单的大小。
假设我这样做了:allSpawnpoints.put("yourWorld",Spawnpoints);
现在我想得到字符串yourWorld的繁殖点列表的大小。知道我该怎么做吗?
我尝试过:int number = allSpawnpoints.get("yourWorld").size();
看起来这不起作用。
我希望有人能帮助我!感谢阅读。当做
不要使用ArrayList
或World
对象,而是尝试使用World
的Map
到Location
的List
。类似这样的东西:
Map<World,List<Location>> allSpawnpoints = new HashMap<World,List<Location>>();
然后,在创建了World
的生成点列表后,将其放入Map
中,如下所示:
allSpawnpoints.put(yourWorld,Spawnpoints);
然后进入下一个世界。
我还建议将Spawnpoints
重命名为spawnPoints
。