list - 如何在 dart 的地图中使用和存储列表?
问题描述
是的,是好人,
我需要能够从存储在地图中的列表中添加和删除元素;
我错误地认为这是:
final Map<int,List<int>> _map = Map();
_map[1].add(1);
int _data=_map[1][0];
或这个:
Map<int,List<int>> _map = Map<int,List<int>>();
List _list = List();
_list.add(1);
_map[1]=_list;
int _data=_map[1][0];
会工作,但不会。
那么它是怎样工作的?
先感谢您,
弗朗切斯科
解决方案
第一个_map[1]
尝试获取_map
给定 key 在映射中的值1
。但是此时_map
是空的,所以它返回null
。
要延迟初始化地图,您可以执行以下操作:
final Map<int,List<int>> _map = Map();
_map.putIfAbsent(1, () => <int>[]).add(1);
int _data=_map[1][0];
推荐阅读
- javascript - 由于 SequelizeUniqueConstraintError,SQLite PUT 方法不起作用
- c# - 方法 HttpContent.ReadAsStringAsync() 返回无效的 html 代码。怎么可能?
- python - 一年后匹配点并将其删除
- azure - 从 AzureRM 强制转换为 AZ powershell
- c# - 为什么 get, set 在 c# 中帮助我
- elasticsearch - 使用 Amazon Kinesis Data Firehose ElasticSearch Selivery 时是否可以设置文档 ID
- python - 删除特定列熊猫
- c# - 如何在 C# 中检查某个日期是否已过?
- python - ansible:获取子元素列表并断言重复项
- javascript - 组合框的数组状态