Saltar al contenido

¿Cuál es el tamaño de memoria de un ArrayList en Java?

No dudes en compartir nuestra web y códigos con tus amigos, ayúdanos a aumentar nuestra comunidad.

Solución:

Es la capacidad de java.util.ArrayList multiplicada por el tamaño de referencia (4 bytes on 32bit, 8bytes on 64bit) + [Object header + one int and one references].

La capacidad es diferente (always >=) que el tamaño pero quieres que sean iguales, llama trimToSize()

Técnicamente hablando el ArrayList tiene un Object[] donde almacena los datos.

Puedes usar algo como Runtime.getRuntime().totalMemory() y su contraparte Runtime.getRuntime().freeMemory() para obtener una suposición educada, pero eso no tiene en cuenta los objetos que se procesan en GC entre llamadas.

Para eso sirve un generador de perfiles de memoria. Te lo dirá por tu plataforma. El tamaño mínimo para una ArrayList vacía es de 64 bytes. Es muy probable que no necesite saber esto a menos que tenga 100 000 elementos o más.

Finalizando este artículo puedes encontrar las interpretaciones de otros desarrolladores, tú además puedes mostrar el tuyo si lo crees conveniente.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *