flutter - 颤振评估 var 是整数还是字符串
问题描述
我需要评估什么类型是变量来进行一些切换,有任何方法可以评估一个变量来获取他的类型,比如 val() 或类似的东西。我需要为整数和其他字符串做一些事情。
我已经尝试使用开关,像这样,
switch (selector) {
case int :
print('value is a integer');
break;
case String:
print('value is a String');
break;
}
但是我怎么做到这一点,如果开关可以允许比较混合类型的变量?
谢谢你
解决方案
您可以使用关键字is
或切换runtimeType
:
dynamic foo = 42;
if (foo is int) {
print("Hello");
}
switch (foo.runtimeType) {
case int: {
print("World");
}
}
考虑使用is
而不是直接使用runtimeType
. 与is
子类一样。虽然使用runtimeType
是一个严格的比较。
推荐阅读
- azure - Azure DevOps server 2020 1.1 创建代理池时池类型不可用
- jpa - EclipseLink JPA 转换器子类不起作用
- git - 无法使用 git 向 Github 进行身份验证
- python - 在所有 6 帧中查找 ORF
- c - 在编译时隐藏二进制字符串?
- firebase - 如何使用 Flutter 列出 Firebase 存储中的所有路径和目录?
- flutter - 如何使用自定义画家画半圆
- node.js - 如何在 Node.js 中制作 Base64 图像?
- r - coord_trans 和 coord_flip 在同一个图中
- javascript - 使用 JS 在 Canvas 内设置图像大小