哈希值

哈希值

哈希表相关的预备知识

哈希值是什么?

哈希值是一个十进制的整数,由本地的操作系统随机给出,是一个逻辑地址,是模拟出来的地址,而非数据实际存储的物理地址

相关的方法

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());
    }
}
posted @ 2020-03-16 17:59  lorz5  阅读(1416)  评论(0)    收藏  举报