List<T>をArray[T]に、その逆のArray[T]をList<T>に変換するサンプルコードと実行例を以下に記します。
以下に C#, Visual Basic のサンプルコードと実行結果を記します。
using System; using System.Collections.Generic; class Program { static void Main(string[] args) { List<string> lst = new List<string> { "Windows", "macOS", "Linux" }; Console.WriteLine("-- List<T> --"); foreach (string item in lst) { Console.WriteLine("List : {0}", item); } Console.WriteLine("-- List<T> -> Array[T] --"); string[] ary = lst.ToArray(); Console.WriteLine("Count : {0}", lst.Count); for (int i = 1; i <= lst.Count; i++) { Console.WriteLine("Array({0}) : {1}", i - 1, ary[i - 1]); } Console.WriteLine("-- Array[T] -> List<T> --"); List<string> lst2 = new List<string>(ary); foreach (string item in lst2) { Console.WriteLine("List : {0}", item); } } }
Imports System Module Program Sub Main(args As String()) Dim lst As List(Of String) = New List(Of String) lst.Add("Windows") lst.Add("macOS") lst.Add("Linux") Console.WriteLine("-- List(Of T) --") For Each item As String In lst Console.WriteLine("List : {0}", item) Next Console.WriteLine("-- List(Of T) -> Array(T) --") Dim ary As String() = lst.ToArray() Console.WriteLine("Count : {0}", lst.Count) For i As Integer = 1 To lst.Count Console.WriteLine("Array({0}) : {1}", i - 1, ary(i - 1)) Next Console.WriteLine("-- Array(T) -> List(Of T) --") Dim lst2 As List(Of String) = New List(Of String)(ary) For Each item As String In lst2 Console.WriteLine("List : {0}", item) Next End Sub End Module
上記のサンプルコードを実行した時のキャプチャです。
以上、Listから配列(Array)、ArrayからListに変換するサンプルコードでした。