如何确定对象是否属于DART语言中的类?

我希望做如下事情:

if (someObject.class.toString() == "Num") {
    ...
}

返回值类型是什么?它必须是一根绳子吗?


镜像库一直起伏不定,现在似乎变化很快,因为我发现有一件事根本没有像所示的那样工作.

推荐答案

  • 通过使用isis!运算符,如下所示:

    if (someObject is T)
    

    documentation人中:

    isis!运算符用于判断类型非常方便.结果是 如果obj实现由T指定的接口,则obj is T为真.为 例如,obj is Object总是正确的.

  • 使用Mirrors API(请参见this example):

    Expect.equals('T', someObject.simpleName)
    

Dart相关问答推荐

Futures 和异步代码如何在 Dart 中工作?

dart 中的 Function() 和 Function 有什么区别?

如何在 Flutter 的 firebase_database 中执行事务?

Flutter - MultiProvider 如何与相同类型的提供者一起工作?

Dart 中的静态构造函数

Flutter 中带有导航栏的永久视图

为什么Dart中的 abs() 函数在没有用括号括起来时返回负数?

ProcessException:进程C:\..\myapp\android\gradlew.bat异常退出:

如何在 Dart 中创建一个空 Set

如何组织混合HTTP服务器+web客户端Dart元素文件?

在 Flutter 中推送新页面时,Navigator 堆栈上的页面会重建

Flutter 在 main 中读取共享首选项,然后决定哪个启动页面?

常数在定义Flutter边缘集中的作用

Flutter 使用什么 colored颜色 系统,为什么我们使用 `const Color` 而不是 `new Color`

Dart 语法高亮不是高亮 dart 代码

Error: The argument type "String?"can't be assigned to the parameter type"String" because "String?"s nullable and "String"isn't

如何判断switch/case中对象的类型?

我们如何在 Dart 中删除一个对象?

如何在 Dart 中扁平化map列表?

有没有办法在 Dart 中通过引用传递原始参数?