小编Seb*_*nJL的帖子

Dart null safety - 以 null 安全的方式从映射中检索值

我有类似于此示例代码的代码(不要介意它没有意义):

void foo(Map<int, String> myMap) {
  String s = myMap[1];
}
Run Code Online (Sandbox Code Playgroud)

dart 分析器向我发出有关该行的警告,String s = myMap[1];并显示以下警告:

“字符串?”类型的值 不能分配给“String”类型的变量。尝试更改变量的类型,或将右侧类型转换为“String”。

我看到这种情况正在发生,因为从地图中检索值可能会导致null. 为什么下面的代码片段给了我同样的警告?

void foo(Map<int, String> myMap) {
  if (myMap.containsKey(1)) {
    String s = myMap[1];
  }
}
Run Code Online (Sandbox Code Playgroud)

dart dart-null-safety

16
推荐指数
2
解决办法
1万
查看次数

标签 统计

dart ×1

dart-null-safety ×1