具有以下简单的 dart 功能:
void main()
{
Map<String, dynamic> m = { 2 : 200.0, 'x' : 8.0 };
print( "m: $m");
}
为什么 Dart 编辑器/编译器不抱怨 int 键类型 (2)? 我希望安全地知道我的所有密钥类型都是字符串,但这似乎运行良好。
这似乎是一个错误。尽管运行时类型是
int
,编辑器和 VM 不会抱怨。
但是您可以使用解决方法,直到解决此问题:
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;
}