2

使用以下琐碎的飞镖功能:

void main()
{  
    Map<String, dynamic> m = { 2 : 200.0, 'x' : 8.0 }; 
    print( "m: $m");
}

为什么 Dart 编辑器/编译器不抱怨 int 键类型(2)?我希望我的所有密钥类型都是字符串,但这似乎运行良好。

4

1 回答 1

0

这似乎是一个错误。编辑器和 VM 不会抱怨,尽管运行时类型是int.

但是您可以使用解决方法,直到解决此问题:

void main() {
  Map<String, dynamic> m = {};
  m[2] = 200.0;  // editor complains here. VM in checked mode still works, for some reason.
  m['x'] = 8.0;
}
于 2013-11-13T10:57:44.333 回答