IRONSOFTWAREHOME
ACTUALIZACIONES PARA DESARROLLADORES

Lista en C# (Cómo funciona para desarrolladores)

Jacob Mellor, Director de Tecnología @ Team Iron
Jacob Mellor
Updated: 28 de junio de 2026

Las listas son estructuras de datos versátiles y dinámicas que se utilizan para almacenar y manipular colecciones de datos en C#. Forman parte del espacio de nombres System.Collections.Generic, que proporciona una serie de clases de colecciones potentes y seguras mediante tipos, y objetos fuertemente tipados. Este tutorial básico te guiará a través de los conceptos básicos del uso de listas en C#, incluyendo cómo crear/agregar elementos, acceder a índices específicos o primeras apariciones, modificar elementos especificados y eliminar elementos, así como algunos casos de uso comunes.

Creación de listas

Para empezar a usar la clase List, primero debes incluir el espacio de nombres System.Collections.Generic en tu código:

using System.Collections.Generic;

Después de agregar el espacio de nombres genérico, crea un nuevo objeto List especificando el tipo de datos de todos los elementos que deseas almacenar dentro de los corchetes angulares (< >). Aquí hay un ejemplo de cómo crear una lista de enteros:

List<int> numbers = new List<int>();

También puedes inicializar una lista con algunos valores iniciales o definirla por la colección especificada así:

List<string> fruits = new List<string> { "apple", "banana", "cherry" };

También podemos especificar la capacidad inicial predeterminada de la lista. La capacidad inicial especificada es la capacidad máxima predeterminada de la lista.

Métodos de lista

Añadir número de elementos a una lista

Para agregar elementos a tu List, usa el método Add():

numbers.Add(1);     // Adds first element
numbers.Add(2);
numbers.Add(3);

También puedes agregar un rango de elementos de una colección especificada a la lista usando el método AddRange:

List<int> moreNumbers = new List<int> { 4, 5, 6 };
numbers.AddRange(moreNumbers);

Acceso a elementos de lista

Puedes acceder a elementos individuales de una lista usando un índice, al igual que con los arreglos:

string firstFruit = fruits[0];          // "apple"
string secondFruit = fruits[1];         // "banana"

Ten en cuenta que las listas están indexadas desde cero, por lo que el primer elemento tiene un índice de 0. El ejemplo anterior almacenará el elemento en la cadena si existe.

Modificación de elementos de lista

Para modificar un elemento en una lista, simplemente asigna un nuevo valor al elemento en el índice deseado, teniendo en cuenta el índice basado en cero:

fruits[1] = "blueberry";

Ahora, el segundo elemento en la lista de frutas es "blueberry" en lugar de "banana".

Quitar elementos de una lista

Para eliminar un elemento de una lista, puedes usar el método Remove, que elimina la primera ocurrencia de un elemento especificado:

fruits.Remove("apple");

Alternativamente, puedes usar el método RemoveAt para eliminar un elemento en el índice especificado:

fruits.RemoveAt(0);

Para eliminar todos los elementos de una lista, usa el método Clear:

fruits.Clear();

Buscar elementos en una lista

Puedes usar el método Contains() para verificar si una lista contiene un elemento específico:

bool containsApple = fruits.Contains("apple");  // true

Para encontrar el índice de la primera ocurrencia de un elemento, usa el método IndexOf:

int appleIndex = fruits.IndexOf("apple");  // 0

Si el elemento no se encuentra, IndexOf devuelve -1.

Looping a través de una lista

Para iterar a través de los elementos en una lista, puedes usar un bucle foreach:

foreach (string fruit in fruits)
{
    Console.WriteLine(fruit);
}

Alternativamente, puedes usar un bucle for con la propiedad Count, que devuelve el número de elementos en la lista:

for (int i = 0; i < fruits.Count; i++)
{
    Console.WriteLine(fruits[i]);
}

Ordenar una lista

Para ordenar una lista en orden ascendente, usa el método Sort:

List<int> unsortedNumbers = new List<int> { 5, 2, 8, 1, 4 };
unsortedNumbers.Sort();

// Now, unsortedNumbers is { 1, 2, 4, 5, 8 }

Para ordenar una lista en orden descendente, puedes usar el método Sort con una comparación personalizada:

unsortedNumbers.Sort((a, b) => b.CompareTo(a));

// Now, unsortedNumbers is { 8, 5, 4, 2, 1 }

Para un ordenamiento más complejo, puedes implementar una clase personalizada IComparer o usar LINQ (Language Integrated Query). El algoritmo de búsqueda binaria funciona en listas ordenadas.

Uso de LINQ con listas

LINQ te permite realizar consultas y transformaciones poderosas en colecciones, incluidas las listas. Para usar LINQ, primero necesitas incluir el espacio de nombres System.Linq en tu código:

using System.Linq;

Aquí hay algunos ejemplos de consultas LINQ en una lista:

Filtrar una lista

List<int> evenNumbers = numbers.Where(x => x % 2 == 0).ToList();

Mapeo (transformación) de elementos en una lista

List<string> fruitNamesUpperCase = fruits.Select(x => x.ToUpper()).ToList();

Encontrar los valores mínimo y máximo de una lista

int minValue = numbers.Min();
int maxValue = numbers.Max();

Convertir una lista en una matriz

Para convertir una lista a un arreglo, puedes usar el método ToArray:

int[] numbersArray = numbers.ToArray();

Exportación de datos de listas a un PDF con IronPDF

En esta sección, demostraremos cómo exportar los datos en una lista a un archivo PDF usando la biblioteca IronPDF. Esto puede ser útil cuando deseas generar un informe o una versión imprimible de tus datos.

Primero, descarga e instala el paquete NuGet de IronPDF en tu proyecto:

PM > Install-Package IronPdf

Luego, incluye el espacio de nombres IronPdf en tu código:

using IronPdf;

Ahora, vamos a crear una función sencilla que convierta un List de cadenas en una tabla HTML y luego la exporte a un archivo PDF:

using System.Collections.Generic;
using System.Text;
using IronPdf;

void ExportListToPdf(List<string> data, string pdfFilePath)
{
    // Create an HTML table from the list data
    StringBuilder htmlBuilder = new StringBuilder();
    htmlBuilder.Append("<table><tr><th>Item</th></tr>");

    foreach (string item in data)
    {
        htmlBuilder.Append($"<tr><td>{item}</td></tr>");
    }

    htmlBuilder.Append("</table>");

    // Convert the HTML table to a PDF using IronPDF
    var renderer = new ChromePdfRenderer();
    PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlBuilder.ToString());

    // Save the PDF to the specified file path
    pdf.SaveAs(pdfFilePath);
}

Para usar esta función, simplemente llámala con tu lista y la ruta de archivo PDF deseada:

List<string> fruits = new List<string> { "apple", "banana", "cherry" };
ExportListToPdf(fruits, "Fruits.pdf");

Esto generará un archivo PDF llamado "Fruits.pdf" que contiene una tabla con la lista de frutas convirtiendo HTML a PDF con IronPDF. Puedes modificar la función ExportListToPdf para adaptarla a tus necesidades, como agregar un estilo personalizado a la tabla HTML o contenido adicional al PDF.

C# List (Cómo Funciona para Desarrolladores) Figura 1 - HTML a PDF

Conclusión

En este tutorial básico, cubrimos los conceptos básicos del uso de listas en C# y demostramos cómo integrar IronPDF para exportar datos de listas a un archivo PDF. Al incorporar IronPDF en tus proyectos, puedes generar fácilmente informes, facturas u otros documentos imprimibles desde tus proyectos C#.

IronPDF ofrece una prueba gratuita, lo que te permite probar sus capacidades antes de comprometerte a una compra.

Jacob Mellor, Director de Tecnología @ Team Iron
Director de Tecnología

Jacob Mellor es Director de Tecnología de Iron Software y un ingeniero visionario pionero en la tecnología C# PDF. Como desarrollador original de la base de código principal de Iron Software, ha dado forma a la arquitectura de productos de la empresa desde su creación, transformándola, junto con el director ejecutivo Cameron Rimington, en una empresa de más de 50 personas que presta servicios a la NASA, Tesla y organismos gubernamentales de todo el mundo.

...
Leer más

Artículos Relacionados

Key in blue circle

Obtenga su clave de prueba gratuita de 30 días al instante.

Your trial license will be sent to your email address

Sin limitaciones. 100 % desbloqueado. Sin tarjeta de crédito.

OR
bullet_checkedNo se requiere tarjeta de crédito ni creación de cuentaSin limitaciones. 100 % desbloqueado. Sin tarjeta de crédito.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried Iron Suite
Reserve su Demostración en Vivo gratuita
Booking Badge

Confiado por millones de ingenieros en todo el mundo

Logos de clientes de Iron Software
Obtén tu Consulta Sin Compromiso
Completa el formulario a continuación o envía un correo a sales@ironsoftware.com
Tus detalles siempre serán mantenidos confidenciales.
Confiado por millones de ingenieros en todo el mundo
Logos de clientes de Iron Software
Obtenga su Clave de Prueba de 30 días gratis al instante.
No se requiere tarjeta de crédito ni creación de cuenta
Biblioteca C# NuGet para PDF
Instalar con NuGet

Versión: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. En el Explorador de Soluciones, haga clic derecho en Referencias, Administrar Paquetes NuGet
  2. Seleccione Examinar y busque "IronPDF"
  3. Seleccione el paquete e instale
C# PDF DLL
Descargar DLL

Versión: 2026.9

o descargue el Instalador de Windows aquí.

  1. Descargue y descomprima IronPDF en una ubicación como ~/Libs dentro del directorio de su solución
  2. En el Explorador de Soluciones de Visual Studio, haga clic derecho en Referencias. Seleccione Examinar, "IronPDF.dll"

Licencias desde $999