Dans Java 8, pourquoi est la valeur par défaut de la capacité de ArrayList maintenant à zéro?

Que je me souviens, avant Java 8, la valeur par défaut de la capacité de ArrayList était de 10.

Étonnamment, le commentaire sur le défaut (void) constructeur dit encore: Constructs an empty list with an initial capacity of ten.

De ArrayList.java:

/**
 * Shared empty array instance used for default sized empty instances. We
 * distinguish this from EMPTY_ELEMENTDATA to know how much to inflate when
 * first element is added.
 */
private static final Object[] DEFAULTCAPACITY_EMPTY_ELEMENTDATA = {};

...

/**
 * Constructs an empty list with an initial capacity of ten.
 */
public ArrayList() {
    this.elementData = DEFAULTCAPACITY_EMPTY_ELEMENTDATA;
}

OriginalL'auteur kevinarpe | 2015-12-13