• 技术文章 >java >java基础

    Java hashcode方法是什么

    小妮浅浅小妮浅浅2021-07-02 10:03:14原创3107

    说明

    1、java中hashcode方法是Object类native方法,返回值为int类型。

    2、根据一定的规则将与对方相关的信息,例如对方的存储地址、对方的字段等映射到数值中,该数值被称为散列值。

    实例

       public static int hashCode(int a[]) {
            if (a == null)
                return 0;
     
            int result = 1;
            for (int element : a)
                result = 31 * result + element;
     
            return result;
        }

    选择值31是因为它是奇数素数。如果它是偶数,乘法溢出,信息就会丢失,因为乘2等于移位。使用素数的好处不太清楚,但它是传统的。31的一个很好的特性是,乘法可以用移位和减法来代替,以获得更好的性能:31*i==(i<<5)-i。现代虚拟机会自动进行这种优化。

    以上就是Java hashcode方法的介绍,希望对大家有所帮助。更多Java学习指路:Java基础

    本教程操作环境:windows7系统、java10版,DELL G3电脑。

    专题推荐:java hashcode
    上一篇:Java中copyOfRange()的范围拷贝 下一篇:Java捕获异常的两种方法

    相关文章推荐

    • volatile在java禁止指令重排的分析• java中volatile变量的原理• java内部类的访问• 内部类在java多重继承的实现• java内部类的两种类型• java匿名内部类如何使用• java内部类的内存泄漏原因• java中Thread Dump是什么• java Thread的状态分析• java中死锁是什么• java软引用在队列的应用• java软引用如何在浏览器使用• Java著作权结果出炉,谷歌战胜甲骨文• java弱引用和软引用的对比

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网