vi el doc java para ArrayList y encontraron que la capacidad inicial de ArrayList es 10.¿Por qué es la capacidad predeterminada de ArrayList 10?
/**
* Constructs an empty list with an initial capacity of ten.
*/
public ArrayList() {
this(10);
}
Creo que tendría sentido si se tratara de cualquier potencia de 2, pero ¿por qué 10?
También verifiqué la capacidad inicial de HashMap, y es 16 lo que tiene sentido.
/**
* The default initial capacity - MUST be a power of two.
*/
static final int DEFAULT_INITIAL_CAPACITY = 16;
/**
* Constructs an empty <tt>HashMap</tt> with the default initial capacity
* (16) and the default load factor (0.75).
*/
public HashMap() {
this.loadFactor = DEFAULT_LOAD_FACTOR;
threshold = (int)(DEFAULT_INITIAL_CAPACITY * DEFAULT_LOAD_FACTOR);
table = new Entry[DEFAULT_INITIAL_CAPACITY];
init();
}
¿Hay alguna razón específica detrás del número 10?
>>> puede hacer SENCE si sería cualquier cantidad de poder de 2_ ¿por qué? –
Creo que vuelve a la forma de vida dominante en cs que parecen tener dos manipuladores con 5 dígitos en cada uno.Esos fueron utilizados para contar en los primeros días de la informática. Por lo tanto, prefieren potencias de 10 para todo tipo de cosas. –
10 es la capacidad inicial de la Lista de matrices, no el tamaño. El tamaño inicial siempre es 0. – BOSS