【发布时间】:2017-10-18 14:30:42
【问题描述】:
是否可以获得地图长度/大小?出于某种原因,出于调试目的,我需要知道地图的大小。
我似乎不能这样做:
map = new Map<Int, MyObject>();
map.set(.., ..);
map.set(.., ..);
map.length // should be 2
我希望这是可能的。如果不是,为什么?
【问题讨论】:
标签: haxe
是否可以获得地图长度/大小?出于某种原因,出于调试目的,我需要知道地图的大小。
我似乎不能这样做:
map = new Map<Int, MyObject>();
map.set(.., ..);
map.set(.., ..);
map.length // should be 2
我希望这是可能的。如果不是,为什么?
【问题讨论】:
标签: haxe
您可以使用Lambda.count(map)。
但要知道,这将遍历所有值并且可能很昂贵。
至于为什么界面中没有length属性:
地图实现很少基于长度,因此很难知道长度,除非您为其维护一个额外的计数器,这在大多数情况下是没有用的。
—Issue #1663: Size of *Map and other Data Structures (comment)
【讨论】: