映射字段运行时检查是否有问题?

时间:2019-09-28 13:06:47

标签: flutter dart

我有一个代码:

print('${map[segment].runtimeType}');
print(map[segment].runtimeType is List<dynamic>);

它输出:

List<dynamic>
false

我不知道为什么。

ps。 print(map[segment].runtimeType is List); // false

1 个答案:

答案 0 :(得分:2)

这与map无关。通过一个简单的示例,您将得到相同的结果:

int x;
print(x.runtimeType is int); // Prints: false

x.runtimeType类型为Type不是int(在您的示例中也不是List<dynamic>)。

相反,您的意思是在进行类型比较时忽略.runtimeType

print(map[segment] is List<dynamic>);