hashCode()返回的是JVM中地址的哈希码,而不是JVM中的地址,要想得到str在物理内存中的真实地存,那只有用JNI技术调用c/c++去实现,否则无能为力,因为java超不出JVM,而JVM对物理内存地址是“不可见”的,否则java中不就有了指针,而去直接操作内存了,当然这是与java语言相违背的。这些只是我个人见解,说不定还真有高手直接用java语言得到了物理内存中的地址了呢。
str.hashCode()不是str的jvm地址,String类的hashCode函数被重写了。
jvm路过。。这就是正解了!
这个是不可以的,String重写了Hashcode(),获取的并不是物理地址
/**
* Returns a hash code for this string. The hash code for a
* String
object is computed as
*
* s[0]*31^(n-1) + s[1]*31^(n-2) + ... + s[n-1]
*
int
arithmetic, where s[i]
is then
is the length of^
indicates exponentiation.