如何在Dart中添加一对新的Map?

问题描述 投票:1回答:2

将新对添加到Map时,我发现了以下错误。

  • Variables must be declared using the keywords const, final, var, or a type name
  • Expected to find ;
  • the name someMap is already defined

我执行了以下代码。

Map<String, int> someMap = {
  "a": 1,
  "b": 2,
};

someMap["c"] = 3;

我应该如何向地图添加新配对?

我也想知道如何使用Map.update

dart flutter
2个回答
3
投票

要在Flutter中声明您的地图,您可能需要final

final Map<String, int> someMap = {
  "a": 1,
  "b": 2,
};

然后,您的更新应该工作:

someMap["c"] = 3;

最后,update函数有两个参数需要传递,第一个是键,第二个是一个函数,它本身给出一个参数(现有值)。例:

someMap.update("a", (value) => value + 100);

如果您在完成所有这些后打印地图,您将得到:

{a: 101, b: 2, c: 3}

2
投票

您可以通过指定新键来向Dart中的Map添加新对,如下所示:

Map<String, int> map = {
  'a': 1,
  'b': 2,
};

map['c'] = 3;  // {a: 1, b: 2, c: 3}

根据评论,它不适用于OP的原因是,这需要在方法内完成,而不是在顶层。

© www.soinside.com 2019 - 2024. All rights reserved.