首页 > 解决方案 > 颤振评估 var 是整数还是字符串

问题描述

我需要评估什么类型是变量来进行一些切换,有任何方法可以评估一个变量来获取他的类型,比如 val() 或类似的东西。我需要为整数和其他字符串做一些事情。

我已经尝试使用开关,像这样,

 switch (selector) {
case  int :
  print('value is a integer');
    break;
case  String:
    print('value is a String');
   break;

}

但是我怎么做到这一点,如果开关可以允许比较混合类型的变量?

谢谢你

标签: flutter

解决方案


您可以使用关键字is或切换runtimeType

dynamic foo = 42;
if (foo is int) {
  print("Hello");
}
switch (foo.runtimeType) {
  case int: {
    print("World");
  }
}

考虑使用is而不是直接使用runtimeType. 与is子类一样。虽然使用runtimeType是一个严格的比较。


推荐阅读