这似乎是一个问题,已经被问了一百万遍了。但是我很长时间以来一直怀疑,并且还没有得到正确的答案。
假设我有一个包含1100个元素的hashmap。我假设地图上有1000个水桶。
因此,当我插入一个新元素时,它首先派生密钥的哈希,例如其676,现在它将检查676存储桶在哪里,并将该对象作为EntryObject放入存储桶中。
现在我的问题是如何到达676桶?我假设这些存储区哈希值已编入索引,我的意思是有序。就像我有一本1000页的书,而我想转到676页一样,我无法直接打开该页面,根据书的宽度的假设,可以到达接近676页的页面。再尝试几次,我可以转到第676页。本书是否有100页或1000000页,与1:10000相比并没有多大区别,但是在到达确切的页面之前,我必须进行几次尝试。
我的问题是,它在HashMap中如何发生?另外,如果您中的任何一位给我一些引导,以深入地了解内部工作原理,这将非常有帮助。
繁花如伊
相关分类