Saltar a contenido

Introducción

Hasta ahora la única forma de gestionar grupos de objetos o datos eran los arrays. Si bien son sencillos de usar, poseen una serie de inconvenientes que no los hacen prácticos en la mayoría de las aplicaciones, siendo estos:

  • No se adapta al tamaño del problema. Se ha de conocer el tamaño al crear el array, implica que o se pierde algo de espacio o es posible que se quede pequeño…
  • Búsquedas complejas. La búsqueda de un elemento en un vector desordenado es costosa computacionalmente.
  • Posibles problemas de memoria. En caso de gran cantidad de objetos a gestionar se ha de reservar memoria contigua, y en ocasiones esto no es sencillo.
  • Manejo complejo. La inserción, borrado y obtención de elementos es compleja.

Para solucionar estos problemas se han definido las estructuras de datos dinámicas, también conocidas como tipos de datos abstractos o TAD. En Java gran parte de estas estructuras de datos dinámicas se agrupan en lo que se conoce como Colecciones (Collections).

Clase Collections