当哈希映射填满负载因子(.75)的比例并且超过它时,容量将加倍并且重新散列会发生,这会导致条目的重新排列。
在这种情况下,任何键的哈希码如何取决于哈希映射的容量,以至于会发生重新排列呢?如果任何键的哈希码是10(例如),当哈希映射的容量变化时,它如何受到影响。
在这种情况下,任何键的哈希码如何取决于哈希映射的容量,以至于会发生重新排列呢?如果任何键的哈希码是10(例如),当哈希映射的容量变化时,它如何受到影响。
hashCode
在HashMap
的容量增加时不会改变。然而,当您需要将值为503的hashCode
映射到具有64个桶的HashMap
时,您使用模运算符(即hashCode()%64
),这将把您映射到第55个桶。HashMap
的容量增加到128个桶时,对同一hashCode
(这次是hashCode()%128
)应用模运算符将该hashCode
映射到另一个桶(第119个桶)。hashCode
上。它应用于在hashCode
上应用另一个内部哈希函数的结果上。这并不改变解释。