DE .NET, SQLSERVER Y MÁS, APRENDE CONMIGO!✔

Desarrollo de todo tipo de aplicaciones y Administración de Base de datos con Tecnología Microsoft


UNETE

ArrayList

0

ArrayList

Esta es una clase que representa una lista de datos. Es bastante parecida a la colección explicada en el, con la diferencia que el post anterior. ArrayList puede aumentar o disminuir su tamaño dinámicamente de una manera eficiente.

Con un array de datos no era posible aumentar la capacidad del vector ya que dicho parámetro es especificado en el momento de crear la instancia del objeto. El ArrayList a diferencia, brinda la posibilidad de aumentar o disminuir su tamaño dinámicamente según sea necesario.

Para crear una instancia de este objeto, se debe utilizar la clase ArrayList incluida en el espacio de nombre System.Collections como se muestra a continuación.

ArrayList arrayList=new ArrayList();

El constructor de la clase ArrayList acepta también un parámetro tipo entero que indica la capacidad inicial del objeto que se esta creando.

Si es necesario agregar un objeto a la colección, se debe utilizar el método Add, el cual inserta el nuevo elemento en la última posición, o el método Insert el cual lo inserta en la posición indicada.



Todos los objetos almacenados en un Arraylist son tratados como objetos, por lo tanto es posible agregar todo tipo de datos, es decir, se puede agregar enteros, cadenas de texto, objetos de clases propias, etc. Y a diferencia de los array vistos en la parte I, no todos los elementos deben ser del mismo tipo de dato. Esto en algunas ocasiones puede ser una ventaja ya que permite almacenar gran variedad de información en una sola colección, sin embargo, por razones de rendimiento (cast, boxing, unboxing), hay ocasiones en las que es preferible utilizar las colecciones genéricas que serán tratadas mas adelante.

Si es necesario quitar elementos de la colección, se debe usar el método remove, removeAt o RemoveRange, los cuales eliminan el objeto pasado como parámetro, o un elemento en una posición especifica, o un grupo de elementos respectivamente.

Las propiedades mas utilizadas de esta colección son : Count y Capacity. La primera sirve para conocer la cantidad actual de elementos que contiene la colección. La segunda indica la capacidad máxima actual de la colección para almacenar elementos. Es necesario tener presente que la capacidad de la colección, aumenta en caso de ser necesario al insertar un elemento, con lo que se garantiza el redimensionamiento automático.

La capacidad de una colección nunca podrá ser menor a la cantidad total de elementos contenidos, por lo que si se modifica manualmente la propiedad Capacity y se le asigna un valor menor que el valor devuelto por la propiedad Count, obtendremos una excepción de tipo ArgumentOutOfRangeExcepetion .

A continuación se muestra un ejemplo del uso de estas propiedades:

















Para acceder a los elementos contenidos por la colección se puede hacer mediante el uso de índices o mediante la instrucción foreach.






Determinar que tipo de colección usar en un caso especifico, es tarea del desarrollado y se debe evaluar las condiciones para determinar la manera mas eficiente de administrar los recursos. Si es un escenario donde no conocemos el tamaño que tendrá la colección y si además será muy probable que el tamaño varíe, entonces será recomendable bajo todas las demás circunstancias usar un ArrayList en lugar de un array debido a que el ArrayList brinda la posibilidad de redimensionarlo automáticamente. Sin embargo, para escenarios donde se conoce de antemano la cantidad total de elementos a almacenar y si todos son del mismo tipo, se debe usar el array convencional ya que los objetos son almacenados en su tipo de datos nativo y no es necesario hacer conversiones.

 

DEMOSTRACIÓN

En Visual Studio vamos a dar click en menú File à New à Project



En la Ventana emergente le damos click a Window, seleccionamos la opción “Console Application” y espacio Name colocamos el nombre del proyecto que para el Ejemplo es “Demo 3 20483” y luego presionamos el botón OK


Ahora codificaremos el ejemplo para el ArrayList:


hacemos el llamado al procedimiento en el método Main() y Procedemos a depurar el código colocando las referencias correspondientes en la ventana de inspección:


Cuando empezamos a correr con F11 nuestro ArrayList empieza agregar Valores con la sentencia Add





 Seguimos con el siguiente Array


La salida de la pantalla seria la siguiente:








Tal vez te interesen estas entradas

No hay comentarios