Saltar al contenido principal
Publicado el

Clase ArrayList en C#

Compartir:

Introducción

En el entorno de la programación, siempre buscamos herramientas que nos permitan almacenar y manipular datos de forma eficiente. En C#, una de esas herramientas es la clase ArrayList.

¿Qué es ArrayList?

Antes que nada, es fundamental entender qué es un ArrayList. A diferencia de los arrays tradicionales de tamaño fijo, el ArrayList es una colección dinámica de objetos. Pertenece al namespace System.Collections y es conocido por su capacidad de ajustar automáticamente su tamaño.

Características de ArrayList:

  1. Dinámico: No es necesario definir un tamaño en el momento de la creación.
  2. Tipo de Objeto: Almacena objetos de tipo object, lo que permite guardar diferentes tipos de datos.
  3. Ordenado: Los elementos se acceden por índice y se mantienen en orden.

Manipulando Datos con ArrayList

La clase ArrayList proporciona varios métodos para facilitar la gestión de los elementos almacenados:

using System;
using System.Collections;

namespace Base {
  class ClaseArrayList {
    private ArrayList materialesEscolares = new ArrayList() {
      "Mochila",
      "Estuche",
      "Lápiz",
      "Goma de borrar"
    };

    public void Run() {
      // Agregando elementos
      materialesEscolares.Add("Sacapuntas");
      materialesEscolares.Add("Tijeras");

      // Eliminando un elemento específico
      materialesEscolares.Remove("Mochila");

      // Invirtiendo el orden
      materialesEscolares.Reverse();

      // Mostrar la cantidad de elementos
      Console.WriteLine($"Número de materiales escolares: {materialesEscolares.Count}");

      // Mostrar todos los elementos
      foreach (var materialEscolar in materialesEscolares)
        Console.WriteLine($"Material escolar: {materialEscolar}");
    }
  }
}

Ventajas y Limitaciones

El ArrayList tiene varias ventajas, como flexibilidad y facilidad de uso. Sin embargo, no está exento de limitaciones:

  1. Rendimiento: Al ser de tipo object, pueden existir costes de rendimiento asociados al boxing y unboxing.
  2. Tipado: La ausencia de tipado fuerte puede llevar a errores en tiempo de ejecución.

Para muchas aplicaciones, List<T> puede ser una alternativa más eficiente, ya que está fuertemente tipada.

¿Cuándo usar ArrayList?

A pesar de sus limitaciones, el ArrayList es útil cuando necesitas una colección dinámica sin comprometerte con un tipo de dato específico. Es especialmente valioso en escenarios donde los datos a almacenar son heterogéneos o cuando no se tiene certeza sobre la cantidad de datos.

Conclusión

Entender las distintas herramientas disponibles es fundamental para cualquier programador. La clase ArrayList es una de esas herramientas en C#. Ofrece gran flexibilidad, pero, como todas las herramientas, debe usarse en el contexto adecuado.

Happy coding!