Tutorial de C# ArrayList con ejemplos
⚡ Resumen inteligente
En C#, ArrayList es una colección dinámica del espacio de nombres System.Collections que almacena elementos como objetos. A diferencia de un array, crece y se reduce en tiempo de ejecución y puede contener enteros, cadenas y valores booleanos en una misma lista.

¿Qué es ArrayList en C#?
La colección ArrayList es similar a la Matrices tipo de datos en C#. La mayor diferencia es la naturaleza dinámica de la colección de listas de matrices.
Para las matrices, debe definir la cantidad de elementos que la matriz puede contener en el momento de la declaración de la matriz. Pero en el caso de la colección Array List, no es necesario hacer esto de antemano. Se pueden agregar o eliminar elementos de la colección Array List en cualquier momento. Veamos con más detalle las operaciones disponibles para la colección de listas de matrices.
Declaración de una lista de matrices
La declaración de una ArrayList se proporciona a continuación. Se crea una lista de matrices con la ayuda del tipo de datos ArrayList. La palabra clave "nueva" se utiliza para crear un objeto de ArrayList. Luego, el objeto se asigna a la variable a1. Entonces ahora la variable a1 se usará para acceder a los diferentes elementos de la lista del arreglo.
ArrayList a1 = new ArrayList()
Agregar elementos a una matriz
El método add se utiliza para agregar un elemento a ArrayList. El método add se puede utilizar para agregar cualquier tipo de elemento de tipo de datos a la lista de la matriz. Por lo tanto, puede agregar un número entero, una cadena o incluso un valor booleano a la lista de matrices. La sintaxis general del método de suma se proporciona a continuación.
ArrayList.add(element)
A continuación se muestran algunos ejemplos de cómo se puede utilizar el método "agregar". El método add se puede utilizar para agregar varios tipos de datos a la colección Array List.
A continuación puede ver ejemplos de cómo podemos agregar cadenas de números enteros e incluso valores booleanos a la colección Array List.
- a1.add(1): esto agregará un valor entero a la colección
- a1.add(“Ejemplo”): esto agregará un valor de cadena a la colección
- a1.add(true): esto agregará un valor booleano a la colección.
Ahora veamos cómo funciona esto a nivel de código. Todo el código mencionado a continuación se escribirá en nuestra aplicación de consola. El código se escribirá en nuestro archivo Program.cs.
En el siguiente programa, escribiremos el código para crear una nueva lista de matrices. También mostraremos cómo agregar elementos y mostrar los elementos de la lista Array.
using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { ArrayList a1 = new ArrayList(); a1.Add(1); a1.Add("Example"); a1.Add(true); Console.WriteLine(a1[0]); Console.WriteLine(a1[1]); Console.WriteLine(a1[2]); Console.ReadKey(); } } }
Code Explicación:-
- El primer paso se utiliza para declarar nuestra Lista de matrices. Aquí declaramos a1 como una variable para contener los elementos de nuestra lista de matriz.
- Luego usamos la palabra clave add para agregar el número 1, la cadena "Ejemplo" y el valor booleano "verdadero" a la lista de la matriz.
- Luego usamos el método Console.WriteLine para mostrar el valor de cada elemento de la lista de matriz en la consola. Notarás que, al igual que las matrices, podemos acceder a los elementos a través de sus posiciones de índice. Entonces, para acceder a la primera posición de la Lista de matriz, usamos la posición de índice [0]. Y así sucesivamente y así sucesivamente.
Si el código anterior se ingresa correctamente y se ejecuta el programa, se mostrará el siguiente resultado.
Salida:
En el resultado, puede ver que todos los elementos de la lista de matriz se envían a la consola.
Veamos algunos métodos más que están disponibles como parte de ArrayList.
Contar
Este método se utiliza para obtener la cantidad de elementos de la colección ArrayList. A continuación se muestra la sintaxis general de esta declaración.
ArrayList.Count(): este método devolverá el número de elementos que contiene la lista de matriz.
Contiene
Este método se utiliza para ver si un elemento está presente en la colección ArrayList. A continuación se muestra la sintaxis general de esta declaración.
ArrayList.Contains(elemento): este método devolverá verdadero si el elemento está presente en la lista; de lo contrario, devolverá falso.
Eliminar en
Este método se utiliza para eliminar un elemento en una posición específica en la colección ArrayList. A continuación se muestra la sintaxis general de esta declaración.
ArrayList.RemoveAt(index): este método eliminará un elemento de una posición específica de la lista de matriz.
Ahora veamos cómo funciona esto a nivel de código. Todo el código mencionado a continuación se escribirá en nuestra aplicación de consola. El código se escribirá en nuestro archivo Program.cs.
En el siguiente programa, escribiremos el código para ver cómo podemos utilizar los métodos mencionados anteriormente.
using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { ArrayList a1 = new ArrayList(); a1.Add(1); a1.Add("Example"); a1.Add(true); Console.WriteLine(a1.Count); Console.WriteLine(a1.Contains(2)); Console.WriteLine(a1[1]); a1.RemoveAt(1); Console.WriteLine(a1[1]); Console.ReadKey(); } } }
Code Explicación:-
- Entonces, la primera propiedad que vemos es la propiedad Count. Obtenemos la propiedad Count de la lista de matriz a1 y luego la escribimos en la Consola.
- En la segunda parte, usamos el método Contiene para ver si ArrayList a1 contiene el elemento 2. Luego escribimos el resultado en la Consola mediante el comando Writeline.
- Finalmente, para mostrar el método Eliminar elemento, estamos realizando los pasos a continuación:
- Primero, escribimos el valor del elemento en la posición de índice 1 de la lista de matriz en la consola.
- Luego eliminamos el elemento en la posición de índice 1 de la lista de matriz.
- Finalmente, volvemos a escribir el valor del elemento en la posición de índice 1 de la lista de matriz en la consola. Este conjunto de pasos le dará una idea clara de si el método de eliminación funcionará como debería.
Si el código anterior se ingresa correctamente y se ejecuta el programa, se mostrará el siguiente resultado.
Salida:
¿Por qué el último valor es verdadero?
Si ve la secuencia de eventos, el elemento Ejemplo se elimina de la matriz porque está en la posición 1. La posición 1 de la matriz luego se reemplaza por lo que estaba antes en la posición 2, cuyo valor es "verdadero".
Cómo recorrer un ArrayList en C#
Leer todos los elementos de un ArrayList es una tarea común. Dado que un ArrayList almacena sus elementos como objetos, se pueden recorrer con un bucle foreach o con un bucle for que utilice la propiedad Count. El bucle foreach es la forma más sencilla, ya que recorre cada elemento en orden sin necesidad de un índice.
El siguiente ejemplo crea un ArrayList de cadenas de texto e imprime cada valor en una línea independiente. El código está escrito en el archivo Program.cs de una aplicación de consola.
Paso 1) Importa el espacio de nombres System.Collections y crea un ArrayList con tres elementos.
Paso 2) Utiliza un bucle foreach para leer cada elemento como un objeto y escribirlo en la consola.
using System; using System.Collections; namespace DemoApplication { class Program { static void Main(string[] args) { ArrayList a1 = new ArrayList(); a1.Add("Java"); a1.Add("Python"); a1.Add("Kotlin"); foreach (object item in a1) { Console.WriteLine(item); } Console.ReadKey(); } } }
Code Explicación:-
- Se importa el espacio de nombres System.Collections para que el tipo ArrayList esté disponible para el programa.
- Se añaden tres valores de cadena al ArrayList mediante el método Add.
- El bucle foreach lee cada elemento como un objeto, y el método Console.WriteLine lo imprime en una nueva línea.
Cuando se ejecuta el programa, imprime Java, Python, y Kotlin en líneas separadas. Un bucle for con la propiedad Count daría el mismo resultado, permitiendo además usar la posición del índice de cada elemento.
Métodos y propiedades de ArrayList en C#
La clase ArrayList ofrece numerosos métodos y propiedades integrados para gestionar sus elementos. Además de añadir y eliminar elementos, permite ordenar, buscar e invertir la colección. A continuación se enumeran los miembros más comunes.
| Miembro | Mareas Ideales para Lecciones |
| Agregar | Agrega un único elemento al final del ArrayList. |
| recuadro | Agrega un elemento en una posición de índice específica. |
| Eliminar | Elimina la primera aparición de un elemento específico. |
| Eliminar en | Elimina el elemento en la posición de índice especificada. |
| Limpiar firma | Elimina todos los elementos del ArrayList. |
| Ordenar | Ordena los elementos en orden ascendente. |
| Reverse | Reversees el orden de los elementos en la lista. |
| Contiene | Devuelve verdadero si un elemento dado existe en la lista. |
| Índice de | Devuelve la posición del índice de un elemento dado. |
| Contar | Propiedad que devuelve el número de elementos almacenados. |
| CAPACIDAD | Propiedad que devuelve el número de elementos que puede contener la lista. |
Estos miembros te permiten agregar, buscar, ordenar y eliminar elementos sin tener que escribir tú mismo la lógica, lo cual es una de las principales ventajas de usar una colección en lugar de una matriz simple.
Diferencia entre ArrayList y List en C#
Tanto un ArrayList como un genérico Lista Almacenan un grupo de elementos que pueden crecer durante la ejecución, pero difieren en cómo manejan los tipos. Conocer esta diferencia te ayudará a elegir la opción adecuada para el código C# moderno.
Las principales diferencias se enumeran a continuación:
- Seguridad de tipos: Un ArrayList almacena cada elemento como un objeto, mientras que una List está vinculada a un tipo declarado y se verifica en tiempo de compilación.
- Actuación: Un ArrayList empaqueta y desempaqueta tipos de valor como int, lo que consume tiempo, mientras que una List evita el empaquetado para una mayor velocidad.
- Espacio de nombres: ArrayList reside en System.Collections, mientras que List reside en System.Collections.Generic.
- de calidad: Para leer un ArrayList, a menudo es necesario convertirlo de nuevo al tipo original, pero una List devuelve el tipo correcto directamente.
- Recomendación: Microsoft Recomienda List para nuevos desarrollos porque es más seguro, rápido y fácil de leer.
En resumen, un ArrayList es útil para comprender código antiguo o almacenamiento de tipos mixtos, mientras que una List es la opción preferida para la mayoría de las aplicaciones actuales.




