如何测试KType变量是否包含可为空的kotlin类型的值(eG Int?)?
我有
var type: KType
Run Code Online (Sandbox Code Playgroud)
变量来自a KProperty<*>.returnType,我需要检测它是否等于某些kotlin类型(Int,Long等).这适用于:
when (type) {
Int::class.defaultType -> ...
Long::class.defaultType -> ...
else -> ...
}
Run Code Online (Sandbox Code Playgroud)
但这仅适用于非可空类型,因此第一个分支与Int不匹配?但是我还是无法弄清楚我是如何检测到的类型是Int?除了明显但不那么好
type.toString().equals("kotlin.Int?")
Run Code Online (Sandbox Code Playgroud)