如何在删除项目时在地图上迭代?
How to iterate on map while removing items?
我是 haxe 的新手,我需要在迭代元素字典时删除项目。这在 Haxe 中可行吗?
是的,有可能。
var map:Map<Int, String> = [100 => 'a', 101 => 'b', 102 => 'c'];
trace(map); // {100 => a, 101 => b, 102 => c}
for (v in map.keys()){
if (v == 101) map.remove(v);
}
trace(map); // {100 => a, 102 => c}
上试一试示例
您可以在遍历地图的键时删除。
trace("Remove every 2nd key");
for(k in myMap.keys())
{
if(k % 2 == 0)
myMap.remove(k);
}
在此处查看我的示例:https://try.haxe.org/#d3525
我是 haxe 的新手,我需要在迭代元素字典时删除项目。这在 Haxe 中可行吗?
是的,有可能。
var map:Map<Int, String> = [100 => 'a', 101 => 'b', 102 => 'c'];
trace(map); // {100 => a, 101 => b, 102 => c}
for (v in map.keys()){
if (v == 101) map.remove(v);
}
trace(map); // {100 => a, 102 => c}
上试一试示例
您可以在遍历地图的键时删除。
trace("Remove every 2nd key");
for(k in myMap.keys())
{
if(k % 2 == 0)
myMap.remove(k);
}
在此处查看我的示例:https://try.haxe.org/#d3525