9、 Hashcode的作用

作者: RUMyCola | 来源:发表于2022-08-03 08:24 被阅读0次

Hashcode的作用

        java的集合有两类,一类是List,还有一类是Set。前者有序可重复,后者无序不重复。当我们在set中插入的时候怎么判断是否已经存在该元素呢,可以通过equals方法。但是如果元素太多,用这样的方法就会比较慢。

        于是有人发明了哈希算法来提高集合中查找元素的效率。 这种方式将集合分成若干个存储区域,每个对象可以计算出一个哈希码,可以将哈希码分组,每组分别对应某个存储区域,根据一个对象的哈希码就可以确定该对象应该存储的那个区域。

        hashCode方法可以这样理解:它返回的就是根据对象的内存地址换算出的一个值。这样一来,当集合要添加新的元素时,先调用这个元素的hashCode方法,就一下子能定位到它应该放置的物理位置上。如果这个位置上没有元素,它就可以直接存储在这个位置上,不用再进行任何比较了;如果这个位置上已经有元素了,就调用它的equals方法与新元素进行比较,相同的话就不存了,不相同就散列其它的地址。这样一来实际调用equals方法的次数就大大降低了,几乎只需要一两次。

相关文章

  • 9、 Hashcode的作用

    Hashcode的作用 java的集合有两类,一类是List,还有一类是Set。前者有序可重复,后者无序不重复。当...

  • HashCode 作用,如何重载hashCode方法

    HashCode 作用,如何重载hashCode方法

  • Java基础知识(二):hashCode VS equals

    2. hashCode VS equals 2.1 hashCode介绍 hashCode()的作用是获取哈希码,...

  • HashCode作用

    http://c610367182.iteye.com/blog/1930676 以 Java.lang.Obje...

  • hashCode的作用

    很多地方都会利用到hash表来提高查找效率。 在Java的Object类中有一个方法: public native...

  • HashCode的作用

    以下内容整理自互联网,仅用于个人学习 hashCode()方法是Object类提供的,所以每个对象都有hashCo...

  • Hashcode的作用

    hashcode是用来鉴定两个对象是否相等的。当然我们知道我们比较的时候用的是equals方法。 一般来说equa...

  • hashCode的作用

    hashCode() 方法用于返回字符串的哈希码。字符串对象的哈希码根据以下公式计算: s[0]31^(n-1) ...

  • equals和hashcode方法

    描述 equals和hashCode方法都是Object中的方法。本文解释equals()作用,hashCode(...

  • hashCode与equals()

    hashCode()介绍 hashCode()的作用是获取哈希码; 实际上是返回一个int整数. 这个哈希码的作用...

网友评论

    本文标题:9、 Hashcode的作用

    本文链接:https://www.haomeiwen.com/subject/tddqwrtx.html