05 diciembre 2009

Usar los ArrayList descartando los arrays básicos

Sencillamente expondré unas claves que harán caer en picado la popularidad de los Arrays, de toda la vida, por su evolucionado sucersor: El ArrayList.

Para hacer uso de los ArayList, en Java se debe escribir la línea import Java.Utils.ArrayList; que importará la clase ArrayList de la que se declará un objeto que luego se instanciara. Y en C# habrá que importar la clase Collections que existe dentro de System usando la palabra clave using. Luego, igual que en Java, se declará un objeto y se instanciará.


¿Pero cuáles son las ventajas de un objeto ArrayList sobre una variable array de cualquier tipo?


  • Un ArrayList colecciona objetos, un array colecciona dtos de un mismo tipo, que además es básico.
  • Su tamaño. Es decir, cuando declaras un array debes indicar su tamaño al instanciarlo. Y si quieres incuir más valores para los que en origen se creó, deberás redimensionarlo, pero al hacer esto los valores introducidos con anterioridad sepierden. Esto no sucede con los ArrayList porque uno de sus constructores, los construye con tamaño indeterminado, por lo que no hay límite.
  • El catálogo de métodos que tiene un objeto de ArrayList, de los que obviamente carece un array, que si se necesitan deberán programarse. Por ejemplo, a los arrays le faltan la funcionalidad de ordenar descendente y ascendentemente, de eliminar un item según un valor coleccionado, de limpiar su contenido a traves de una función, sin tener que realizar un bucle. Para saber si un array cuenta con un dato tendrás que recorrerlo entero. Sin embargo un ArrayList te devuelve el objeto que en la colección tiene ese valor.
Estas y algunas más son las razones por las que utilizar objetos ArrayList en lugar de arrays de tipo básico que, se me han aparecido durante este fin de semana en el que me reencontré con esta herramienta que, conocí en mi aprendizaje de Java.

No hay comentarios:

Publicar un comentario