estructura de datos subyacente
lista de arreglo 1,7 +
Pensamiento: ¿Por qué no una lista doblemente enlazada
1.8+ gama de lista + rojo-negro árbol +
Algunas variables importantes
// defecto capacidad inicial 16 estáticos finales int = DEFAULT_INITIAL_CAPACITY 1. << 4. ; // capacidad máxima estática final int MAXIMUM_CAPACITY = 1. << 30 ; // predeterminado factor de carga 0,75 estática final un flotador DEFAULT_LOAD_FACTOR = 0.75f ; // Árbol de la umbral, cuando la bañera está lista mayor de 8 nodos, la lista se convierte en árbol rojo-negro estática final int TREEIFY_THRESHOLD = 8 ; // cuando la lista de árbol degenerado rojo-negro como un valor de umbral, y cuando el cubo es inferior a un árbol rojo-negro nodos 6, árbol rojo-negro en una lista enlazada de estática final int= UNTREEIFY_THRESHOLD . 6 ; // capacidad mínima del árbol, un árbol del tiempo, y una vez determinado, sólo el número de conversión de claves-valor es mayor que ocurrirá 64, // Esto es para evitar el establecimiento temprano de la tabla hash, múltiple pares de valores clave simplemente sido colocados con una conversión lista y plomo a innecesaria estática final int MIN_TREEIFY_CAPACITY = 64 ;
Continúa ~~~
Referencia: https://blog.csdn.net/samniwu/article/details/90550196