从地图中删除元素

Tre*_*ree 1 dart flutter

如何在地图上进行迭代,逐个删除元素,然后在删除每个元素后调用一个函数?

假设我有发布功能

  final HashMap<int, bool> _instances = new HashMap<int, bool>();

  void release(dynamic instance) {
    if (_instances[instance.hashCode] != null) {
      _releaseHashCode(instance.hashCode);
      _dispatcher.dispatchEvent(PinEvent.release);
    }
  }

  void _releaseHashCode(int hashCode) => _instances.remove(hashCode);
Run Code Online (Sandbox Code Playgroud)

现在我想创建releaseAll()将调用_releaseHashCode地图中的每个元素,从而释放它并调度释放事件。

  void releaseAll() {
    ...
  }
Run Code Online (Sandbox Code Playgroud)

amo*_*new 11

检查removeWhere

final Map<String, dynamic> tempMap = json.decode(jsonValue);
tempMap.removeWhere((String key, dynamic value)=> value==null);
Run Code Online (Sandbox Code Playgroud)