我们知道在java中,hashmap在一定条件下会转换成红黑树,但是当我们在这个hashmap中移除某个元素的时候,为了保持树的连续性,就会涉及到重排序。此时的重排序就是把这些元素从新进行排序。
我们知道hash都有槽位,那么在重新排序的时候,一般我们的理解是需要把元素按照槽位重新计算。再进行元素的挪动。但是在java8这个红黑树的结构中,重排序是不需要重新按照槽位计算hashcode码的,他只是把当前的原始放在: hashmap总长度+当前元素所在的hashmap中的pos 的位置上。
真正的成长, 源于内心的觉醒和不懈的努力, 你的信念和行动, 将铺就通往更好的自己的道路
-- 展开阅读全文 --
还没有评论,来说两句吧...