flutter 检查List的运行时类型< Model>为List< dynamic>

vs91vp4v  于 2023-03-24  发布在  Flutter
关注(0)|答案(1)|浏览(158)

实际上我是在做一个条件检查,以便找到一个变量的数据类型。但当涉及到列表类型检查。有一个问题,如“模型列表!=动态列表”

bool nullEmptyChk(dynamic val) {
bool rtnVal = false;
try {
  switch (val.runtimeType) {
    case List:
      rtnVal = (val == null || val.isEmpty);
      break;
    case String:
      rtnVal = (val == null || val.isEmpty);
      break;
    default:
      rtnVal = (val == null);
  }
} catch (e) {
  rtnVal = false;
}

return rtnVal;

}

ogq8wdun

ogq8wdun1#

你可以检查这个;

if (val is List?) {
  rtnVal = (val == null || val.isEmpty);
}

遗憾的是,is关键字在switch语句中不起作用,因此您必须将其重写为if语句。尽管看起来这在未来可能是可能的,因为开发人员宣布了Dart 3.0的更改,使开关功能更加强大。如果您感兴趣,请参阅https://youtu.be/KhYTFglbF2k?t=620

相关问题