Conversion de Système.Tableau pour la Liste
La nuit dernière, j'ai eu de rêve que le suivant était impossible. Mais dans le même rêve, quelqu'un de la SORTE m'a dit le contraire. Donc je voudrais savoir si il est possible de convertir System.Array
à List
Array ints = Array.CreateInstance(typeof(int), 5);
ints.SetValue(10, 0);
ints.SetValue(20, 1);
ints.SetValue(10, 2);
ints.SetValue(34, 3);
ints.SetValue(113, 4);
à
List<int> lst = ints.OfType<int>(); //not working
- Ci-dessous lien à montrer comment il le fait en c# codegateway.com/2011/12/...
- Vous devez lancer le
Array
pour ce qu'elle est réellement, unint[]
, alors vous pouvez utiliserToList
:((int[])ints).ToList();
Vous devez vous connecter pour publier un commentaire.
Vous épargner un peu de douleur...
Pouvez aussi simplement...
ou...
ou...
ou...
IEnumerable<int>
, leOfType<int>()
n'est pas nécessaire.ints.ToList();
suffit.Il y a aussi une surcharge du constructeur pour la Liste de travail... Mais je suppose que ce serait une forte tableau typé.
... pour la classe Array
ToList()
, qui est plus efficace? Ou est-il une différence?Array
au lieu deint[]
.)Curieusement personne ne répond à la question, OP n'est pas à l'aide d'un fortement typé
int[]
mais unArray
.Vous devez lancer le
Array
pour ce qu'elle est réellement, unint[]
, alors vous pouvez utiliserToList
:Noter que
Énumérable.ToList
appelle la liste constructeur qui vérifie d'abord si l'argument peut être utilisé pourICollection<T>
(dont un tableau met en œuvre), alors il utilisera le plus efficaceICollection<T>.CopyTo
méthode au lieu d'énumérer la séquence.Enum.GetValues
retourne un Tableau et cela m'a aidé à faire une liste de il.La méthode la plus simple est:
ou
using System.Linq;
pourToList()
de travail.Dans le cas où vous voulez retourner un tableau d'énumérations comme une liste, vous pouvez effectuer les opérations suivantes.
dans vb.net viens de le faire
ou
Vous pouvez le faire comme ceci en gros:
c'est votre tableau, et que vous pouvez appeler votre nouvelle liste comme ceci:
Vous pouvez faire cela pour objet complexe aussi.
Vous pouvez juste essayer de votre code:
Vous pouvez simplement utiliser le anyVariable que votre code.
Suffit d'utiliser la méthode existante.. .ToList();
KISS(KEEP IT SIMPLE SIR)
J'espère que cela est utile.
obtenir de la chaîne de valeur
obtenir la valeur entière