jvm 如何在Kotlin中获得Java原语void类?

dzjeubhm  于 2022-11-07  发布在  Kotlin
关注(0)|答案(2)|浏览(212)

我正在开发一个使用反射的KotlinJVM库,在某个点上,我有一个方法来检查指定的类是否为void(而不是Void)。
在Java中,它就像与void.class比较一样简单,但在Kotlin中我还不能做到。

  • 谢谢-谢谢
yb3bgrhw

yb3bgrhw1#

感谢@XtremeBaumer指出了Java和Kotlin中可用的Void.TYPE属性,这两个属性都引用void类。

hjzp0vay

hjzp0vay2#

要获取KClass示例,请编写以下代码

Void.TYPE.kotlin

编辑

fun main() {
    println(Void.TYPE.kotlin == Nothing::class)
    println(Nothing::class.java.name)
    println(Nothing::class.javaPrimitiveType?.name)
    println(Void.TYPE.kotlin.java.name)
    println(Void.TYPE.kotlin.javaPrimitiveType?.name)
}

但打印

true
java.lang.Void
void
void
void

选择权在你

相关问题