kotlin 类型检查数据类的Any变量

elcex8rz  于 2022-12-13  发布在  Kotlin
关注(0)|答案(2)|浏览(142)

我有一个类,它有一个Any类型的构造函数。我正在传递一个Data类的示例给那个构造函数。我怎样才能对Any变量进行类型检查以确保它包含一个Data类呢?
到目前为止,我尝试了:

private var myObject : Any

fun dataClassTypeCheck(): Boolean {
      if (myObject is KClass<*>) {return true}
      return false
    }
50pmv0ei

50pmv0ei1#

如果你想知道myObject是否有一个数据类的类型,那么它是:myObject::class.isData .
如果你想知道myObject是否是一个数据类的KClass对象,那么它是:myObject.isData

qfe3c7zg

qfe3c7zg2#

如果您有类〈?〉:

MyObjectClass::class.java.kotlin.isData

如果您有类示例:

myObject.javaCalass.kotlin.isData

相关问题