Bajo el capó, ArrayList
es esencialmente un dynamic array. Cada vez que se ejemplariza mediante new Arraylist<>()
lo que está sucediendo es que se crea una matriz para contener los valores que desee almacenar cuya capacidad, not to be confused with size por defecto, es de 10.
cada vez que se agrega un valor que aumentaría el tamaño más allá de la capacidad de un nuevo se crea una matriz cuya capacidad es una más de 150% de la capacidad anterior con los contenidos de la matriz anterior copiada dentro.
Si tiene una idea general del tamaño de la lista resultante, o es cierto pero desea la flexibilidad que ofrece el uso de matrices en matrices, puede establecer la capacidad para evitar este proceso repetitivo de crear nuevas matrices, copiar el contenido de la matriz anterior en la nueva, y deshacerse de la anterior, que de lo contrario aumentará en las apariciones proporcionales al tamaño de la lista.
¿Qué significa esto? y cual es el beneficio de eso? –
gr8 respuesta muchas gracias :), me encanta stackoverflow !!! –
Objeto a la palabra "predeterminado" en la primera oración. El número * predeterminado * es el tamaño que se asigna si * no * pone un número entre paréntesis. –