摘要: JDK 1.8版本hash原代码 static final int hash(Object key) { int h; return (key == null) ? 0 : (h = key.hashCode()) ^ (h >>> 16); } 1.首先右移16位数 2.异或高位 3.&计算下标 阅读全文
posted @ 2024-05-07 23:02 辉辉、 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 为什么java的hashcode的选用31次方? 以下是java源码部分 public int hashCode() { int h = hash; if (h == 0 && value.length > 0) { char val[] = value; for (int i = 0; i < v 阅读全文
posted @ 2024-05-07 22:41 辉辉、 阅读(15) 评论(0) 推荐(0) 编辑