有效地更新包含更改列表的地图

时间:2015-01-31 14:08:13

标签: java optimization dictionary dart

想象一下简单的回合制游戏;有些球员各自都有自己的位置:

Map<Player,ModelPosition> modelPositions

GUI也有一个类似的像素位置

Map<Player,PixelPosition> guiPositions

每转几个球员都动了。我编制了一张只有那个移动的玩家的地图

Map<Player,ModelPosition> movements

现在我想将这些动作传递给gui以更新移动的玩家PixelPosition。像这样:

for(Player p in movements.keySet())
{
 guiPositions[p] = modelToPixelConverter(movements[p]))
}

现在我的问题是如何有效地做到这一点。我可以通过循环Map.Entry(在Java中)或使用forEach(在Dart中)来稍微加快一点,但我真正的问题是我也没有迭代guiPosition。我觉得继续访问它而不迭代它是浪费的。我错了吗?

有没有办法在Java / Dart中实现?我也对这里的一般原则感兴趣。

0 个答案:

没有答案