/** * Returns a hash code for this map. * * This method overrides the generic method provided by the superclass. Since * {@code equals()} is not overriden, it is important that the value returned by * this method is the same value as the one returned by the overriden method. * * @return a hash code for this map. */ @Override public int hashCode() { int h = 0; for (int j = realSize(), i = 0, t = 0; j-- != 0;) { while (((key[i]) == (0))) i++; t = (key[i]); t ^= (value[i]); h += t; i++; } // Zero / null keys have hash zero. if (containsNullKey) h += (value[n]); return h; } private void writeObject(java.io.ObjectOutputStream s) throws java.io.IOException {
final int newValue[] = new int[newN + 1]; int i = n, pos; for (int j = realSize(); j-- != 0;) { while (((key[--i]) == (0))); if (!((newKey[pos = (it.unimi.dsi.fastutil.HashCommon.mix((key[i]))) & mask]) == (0)))