
Java基础
看山笔记
这个作者很懒,什么都没留下…
展开
-
HashMap中hash数组长度为什么一定要是2的指数
hash数组是什么每个key存放的位置,一个数组下标也可存多个key(使用邻接表)哈希算法求得Key的hash值后,通过HashMapd的映射算法转换成成数组下标hash数组长度为什么需要是2的指数最简单的映射算法就是取模 hash%length,但取模效率不如位运算效率高,所以使用位运算求索引位置 hash&(length-1)为了减少位运算带来的哈希冲突,将数组长度控制...原创 2020-03-13 23:31:06 · 1478 阅读 · 0 评论 -
深入浅出讲解equals()和hashCode()
文章目录前言1. equals()是什么2. hashCode()是什么3. hashCode()和equals()关系4. 引用前言引用使用HTML语法增加的跳转到“前言”的链接 效果:前言 网上有很多讲解equals()和hashCode()的文章,但很多都人云亦云,甚至存在误导嫌疑,因此整理了靠谱的几篇博客,加上自己的理解和代码验证,尝试回答一下equals()和hashCo...原创 2020-02-29 13:12:13 · 161 阅读 · 0 评论