web-dev-qa-db-fra.com

Un tableau de liste en c #

Je veux avoir un tableau de listes. En c ++ j'aime bien:

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?

43
orezvani

Vous faites comme ça:

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>();
81
Guffa

Étant donné qu'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 qu'un tableau de liste et vous l'avez spécifiquement demandé, mais néanmoins:

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

vous pouvez les initialiser à travers des initialiseurs de collection comme ceci:

List<List<int>> myList = new List<List<int>>(){{1,2,3},{4,5,6},{7,8,9}};
17
Tormod

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();
10
ja72
List<int>[]  a = new List<int>[100];

Vous devez 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>();
2
BrokenGlass

utilisation

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