Как преобразовать массив в список <объект> в С#?

Как преобразовать Array в List<object> в С#?

Ответ 1

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

Если тип элементов массива является ссылочным типом, вы можете оставить .Cast<object>(), поскольку добавленная скина С# 4, т.е. IEnumerable<SomeClass>, может рассматриваться как IEnumerable<object>.

List<object> list = myArray.ToList<object>();

Ответ 2

Используйте конструктор: new List<object>(myArray)

Ответ 3

List<object>.AddRange(object[]) должен сделать трюк. Это позволит избежать всех видов бесполезного распределения памяти. Вы также можете использовать Linq, примерно так: object[].Cast<object>().ToList()

Ответ 4

Конструктор List < > может принимать все, что реализует IEnumerable, поэтому...

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

Ответ 5

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

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

  return list;
}

Ответ 6

Если элемент массива и элемент списка одинаковы

List<object> list=myArray.ToList();

Ответ 7

Все, что все говорят, правильно,

int[] aArray = {1,2,3};
List<int> list = aArray.OfType<int> ().ToList();

превратит aArray в список, список. Однако самое большое, что отсутствует в большом количестве комментариев, заключается в том, что вам нужно иметь эти 2-х операционные операторы в верхней части вашего класса

using System.Collections.Generic;
using System.Linq;

Надеюсь, это поможет!

Ответ 8

Вы также можете инициализировать список массивом напрямую:

List<int> mylist= new List<int>(new int[]{6, 1, -5, 4, -2, -3, 9});

Ответ 9

другой способ

List<YourClass> list = (arrayList.ToArray() as YourClass[]).ToList();

Ответ 10

Это позволяет вам отправить объект:

private List<object> ConvertArrayToList(dynamic array)

Ответ 11

Вот моя версия:

  List<object> list = new List<object>(new object[]{ "test", 0, "hello", 1, "world" });

  foreach(var x in list)
  {
      Console.WriteLine("x: {0}", x);
  }

Ответ 12

Вы можете попробовать это,

using System.Linq;
string[] arrString = { "A", "B", "C"};
List<string> listofString = arrString.OfType<string>().ToList();

Надеюсь, этот кодекс поможет вам.