Un tableau de liste en c#

Je veux avoir un tableau de Listes. En C++ j'aime:

List<int> a[100];

Qui est un tableau de 100 listes. chaque liste peut contenir de nombreux éléments. Je ne sais pas comment faire cela en c#. Quelqu'un peut-il m'aider?

39
demandé sur orezvani 2011-09-19 01:51:50

6 réponses

Vous aimez ceci:

List<int>[] a = new List<int>[100];

Maintenant, vous avez un tableau de type List<int> contenant 100 références nulles. Vous devez créer des listes et mettre dans le tableau, par exemple:

a[0] = new List<int>();
71
répondu Guffa 2011-09-18 21:56:17

Comme aucun contexte n'a été donné à cette question et que vous êtes un utilisateur relativement nouveau, je veux m'assurer que vous savez que vous pouvez avoir une liste de listes. Ce n'est pas la même chose que array of list et vous avez demandé spécifiquement cela, mais néanmoins:

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

Vous pouvez les initialiser via des initialiseurs de collection comme ceci:

List<List<int>> myList = new List<List<int>>(){{1,2,3},{4,5,6},{7,8,9}};
16
répondu Tormod 2011-09-18 22:04:44

Approche Simple:

        List<int>[] a = new List<int>[100];
        for (int i = 0; i < a.Length; i++)
        {
            a[i] = new List<int>();
        }

Ou LINQ approche

        var b = Enumerable.Range(0,100).Select((i)=>new List<int>()).ToArray();
8
répondu ja72 2011-09-18 21:56:00
List<int>[]  a = new List<int>[100];

Vous devrez toujours allouer chaque liste individuelle dans le tableau avant de pouvoir l'utiliser:

for (int i = 0; i < a.Length; i++)
    a[i] = new List<int>();
1
répondu BrokenGlass 2011-09-18 21:54:36

Utiliser

List<int>[] a = new List<int>[100];
1
répondu Yahia 2011-09-18 21:54:37
// The letter "t" is usually letter "i"//

    for(t=0;t<x[t];t++)
    {

         printf(" %2d          || %7d \n ",t,x[t]);
    }
-7
répondu Rampedi Tshepo 2013-03-14 22:03:59