Kotlin 获取对象的引用名称

JGu*_*Guo 1 object-reference kotlin

如何获取 Kotlin 对象的引用名称?假设我有一个对象,我怎样才能得到,比如说,com.myapp.CustomClass@6406我的问题与如何通过名称获取对 Kotlin 对象的引用相反?

Man*_*gor 5

看起来您需要完整的对象名称和对象引用标识的组合。

所以,代码可以是这样的:

val myTestObject = ...
val referenceValue = Integer.toHexString(System.identityHashCode(myTestObject))
val className = myTestObject.javaClass.canonicalName
val result = "$className@$referenceValue"
Run Code Online (Sandbox Code Playgroud)

  • 您需要`Integer.toHexString(System.identityHashCode(myTestObject))`,请参阅http://hg.openjdk.java.net/jdk7/jdk7/jdk/file/tip/src/share/classes/java/lang/Object .java。 (2认同)