Listを配列に変換する必要性が生じた場合は、ToArrayメソッドを使うことができます。 ToArrayメソッドを呼び出すと、Listの内容と同じ内容をもつ配列を取得することができます。
Listを配列に変換する
Imports System
Imports System.Collections.Generic
Class Sample
Shared Sub Main()
' 空のListを作成
Dim list As New List(Of String)()
' Listに要素を追加
list.Add("Alice")
list.Add("Bob")
list.Add("Charlie")
' Listの内容を配列に変換
Dim arr() As String = list.ToArray()
Console.WriteLine(String.Join(", ", arr))
End Sub
End Class
実行結果
Alice, Bob, Charlie
引数の型が配列となっているメソッドにListの内容を渡したい場合などにはToArrayメソッドを使う必要があります。 一方、引数の型がIEnumerable<T>となっている場合は配列と同様にListをそのまま渡すことができるため、この場合はToArrayメソッドによって配列に変換する必要はありません。
例えば上記の例で使用しているString.Joinメソッドも、.NET Framework 4以降ではIEnumerable<T>
を引数にとることができるようになっているので、わざわざ配列に変換することなく直接Listを渡すことができます。
String.Joinメソッドについては文字列の加工・編集 §.結合 (Join)を参照してください。