我正在尝试检查迷宫中房间的 HashMap ,并将外部房间添加到 vector 中。房间不断添加多次,任何人都可以帮我找出原因吗?
public void fillOuterRoomVector()
{
//initialize the vector
outerRooms = new Vector<Room>();
//for each one
for(Entry<String, Room> e : mazeRooms.entrySet())
{
//if it is outer
if (e.getValue().isThisAnOuterRoom()==true)
{
//add it
outerRooms.add(e.getValue());
}
}
}
编辑:我在调试时检查了 Eclipse 中的变量 View ,房间实际上只在 mazeRooms 中出现一次,而在outerRooms 中出现多次
编辑:
最佳答案
在不知道数据的情况下,我的猜测是 mazeRooms 具有多个键的相同值。如果您需要一个非重复数据的集合,我建议使用 Set
而不是 Vector
。
关于Java:多次将元素从 Hashmap 添加到 vector ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9082483/