05 2024 档案
摘要: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.&计算下标
阅读全文
摘要:为什么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
阅读全文