web-dev-qa-db-ja.com

List <T>から配列T []への変換

強く型付けされたList<T>を同じ型の配列に変換する簡単な方法はありますか、例:List<MyClass>からMyClass[]

要するに、私は1つのメソッド呼び出し、または少なくとも以下を意味します:

MyClass[] myArray = new MyClass[list.Count];
int i = 0;
foreach (MyClass myClass in list)
{
    myArray[i++] = myClass;
}
67
tehvan

使用してみてください

MyClass[] myArray = list.ToArray();
130
List<int> list = new List<int>();
int[] intList = list.ToArray();

それはあなたの解決策ですか?

15
Sessiz Saat

_List<T>_でToArray()を使用します。

8
Brian Rasmussen
list.ToArray()

トリックを行います。詳細については、 here を参照してください。

8
Bas Bossink

単にToArray()拡張メソッドを使用できます

例:

_Person p1 = new Person() { Name = "Person 1", Age = 27 };
Person p2 = new Person() { Name = "Person 2", Age = 31 };

List<Person> people = new List<Person> { p1, p2 };

var array = people.ToArray();
_

ドキュメントによる

要素はArray.Copy()を使用してコピーされます。これはO(n)操作です。nはCountです。

0
Nipuna

複数のプロセッサコアを使用して2倍の速度を実現するには、HPCsharp nugetパッケージは以下を提供します。

list.ToArrayPar();
0
DragonSpit