哈希表相关的预备知识
哈希值是一个十进制的整数,由本地的操作系统随机给出,是一个逻辑地址,是模拟出来的地址,而非数据实际存储的物理地址
java.lang.Object类中的has code方法
返回该对象的哈希码值,这个十进制整数的十六进制即为该对象的内存地址
源码:
public native int hashcode();
native表示该方法调用了本地操作系统的方法
class A {
// 可以重写hashcode方法
}
public class iteratorDemo {
public static void main(String[] args) {
A aa = new A();
// 对象默认重写了toString方法
// toString方法的源码为:return getClass().getName() + "@" + Integer.toHexString(hashCode());
// 哈希值码的十六进制即为该对象占用的实际内存地址
System.out.println(aa);
System.out.println(aa.hashCode());
}
}
原文:https://www.cnblogs.com/lorz5-blog/p/12505479.html