【发布时间】:2020-03-11 21:44:40
【问题描述】:
我已将枚举实现为我的地图的键,但我发现 Dart 在检索值时不提供类型安全。
例如,以下代码不会导致编译错误:
enum Animal {Bird, Cat, Dog, Horse}
Map<Animal, String> petNames = {
Animal.Bird: 'Lucky',
Animal.Cat: 'Cleo',
Animal.Dog: 'Spot',
Animal.Horse: 'Sleven',
};
String birdName = petNames[Animal.Bird]; // Positive test
String catName = petNames[1]; // What I want to test
String dogName = petNames['two']; // My control, I expected a compilation error
print(birdName); // Output as expected: Lucky
print(catName); // Output is null
print(dogName); // Output is null
这是 Dart 的缺陷吗?
【问题讨论】:
标签: android-studio flutter dart