96 votes

Comment convertir un tableau en liste <object> en C #?

Comment convertir un Array en un List<object> en C #?

120voto

CodesInChaos Points 60274
 List<object> list=myArray.Cast<Object>().ToList();
 

si le type des éléments du tableau est un type de référence, vous pouvez omettre le .Cast<object>() , car C # 4 a ajouté la co-variance d'interface, c'est-à-dire qu'un IEnumerable<SomeClass> peut être traité comme un IEnumerable<object> .

50voto

Dan Puzey Points 20794

Utilisez le constructeur: new List<object>(myArray)

15voto

fjdumont Points 1015

List<object>.AddRange(object[]) devrait faire l'affaire. Cela évitera toute sorte d'allocation de mémoire inutile. Vous pouvez aussi utiliser Linq, un peu comme ceci: object[].Cast<object>().ToList()

10voto

Craig T Points 413

Le constructeur List <> peut accepter tout ce qui implémente IEnumerable, donc ...

         object[] testArray = new object[] { "blah", "blah2" };
        List<object> testList = new List<object>(testArray);
 

5voto

Christian Points 2047
private List<object> ConvertArrayToList(object[] array)
{
  List<object> list = new List<object>();

  foreach(object obj in array)
    list.add(obj);

  return list;
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X