源代码看不出来!
这里是 HashMap的内存图,我看了好多源代码了,不明白的地方是,源代码看不出新增的 Entry 对象的next 指向原来的 Entry 对象。
大家应该懂我的意思吧。
因为是链式存储的,当然,我这里说的情况是对象可以被增加进去的情况。
帮忙指出哪一步(源代码)是达到我说的。
谢谢咯
------解决方案--------------------你是说put?put里查询如果key已经存在则替换匹配的entry的value entry的next不变,如果key不存在则addEntry,在addEntry里创建新的entry在创建是给next赋值
Entry<K,V> e = table[bucketIndex];
table[bucketIndex] = new Entry<K,V>(hash, key, value, e);
------解决方案--------------------next即是之前table里这个index上的entry