HOWTO · Csharp

Array de listas en C#

Hay dos métodos principales que se pueden usar para crear un array de listas en C#, la notación List<T>[] y el método LINQ.

Este tutorial discutirá los métodos para crear un array de listas en C#.

Matriz de listas con la notación List<T>[] en C#

La notación List<T>[] se puede utilizar para declarar un array de listas de tipo T en C#. Tenga en cuenta que esto solo declarará un array de referencias nulas. Todavía tenemos que inicializar cada lista en cada índice de la List<T>[] con la palabra clave new.

using System;
using System.Collections.Generic;

namespace array_of_lists {
  class Program {
    static void Main(string[] args) {
      List<int>[] arrayList = new List<int>[3];
      arrayList[0] = new List<int> { 1, 2, 3 };
      arrayList[1] = new List<int> { 4, 5, 6 };
      arrayList[2] = new List<int> { 7, 8, 9 };
      foreach (var list in arrayList) {
        foreach (var element in list) {
          Console.WriteLine(element);
        }
      }
    }
  }
}

Producción :

1
2
3
4
5
6
7
8
9

En el código anterior, declaramos e inicializamos el array de listas arrayList que contiene valores enteros con la notación List<T>[] y la palabra clave new en C#. El enfoque anterior está bien para arrays pequeños. Pero, si tenemos un array grande, este enfoque puede resultar muy laborioso y puede requerir mucho código. Este enfoque solo es adecuado para matrices con una longitud menor.

Matriz de listas con el método LINQ en C#

El LINQ se utiliza para integrar la funcionalidad de consulta con las estructuras de datos en C#. Podemos usar LINQ para declarar e inicializar un array de listas en C#.

using System;
using System.Collections.Generic;

namespace array_of_lists {
  class Program {
    static void Main(string[] args) {
      List<int>[] arrayList = new List<int> [3].Select(item => new List<int> { 1, 2, 3 }).ToArray();
      foreach (var list in arrayList) {
        foreach (var element in list) {
          Console.WriteLine(element);
        }
      }
    }
  }
}

Producción :

1
2
3
1
2
3
1
2
3

En el código anterior, declaramos e inicializamos el array de listas arrayList que contiene valores enteros con la notación List<T>[] y la palabra clave new en C#. Este método requiere menos mano de obra que el ejemplo anterior para matrices más grandes, por lo que es más adecuado para matrices de mayor longitud.