但是某些視窗元件卻只支援Array,而且Array的執行速度也比較快。
所以常常會有兩個互相轉換的需求,
下面記錄了兩個之間互換的方法。
- Array轉換成ArrayList
這個有兩種方法:
- 使用建構子具有ICollection介面的版本:
- 使用靜態方法Adapter,該方法具有IList介面:
- 使用建構子具有ICollection介面的版本:
- ArrayList轉換成Array
直接用ArrayList.ToArray即可
直接看程式碼吧!
static void Main(string[] args)
{
// Array轉換成ArrayList
int[] a = { 1, 2, 3, 4, 5, 6 };
// 1) 使用ArrayList建構子中,實作ICollection的方法
ArrayList arr1 = new ArrayList(a);
foreach (int i in arr1)
{
Console.WriteLine(i);
}
// 2) 使用ArrayList的靜態方法Adapter,實作IList的方法
ArrayList arr2 = ArrayList.Adapter(a);
foreach (int i in arr2)
{
Console.WriteLine(i);
}
// ArrayList轉換成Array
// 使用ToArray方法
int[] b = (int[])arr1.ToArray(typeof(int));
//int[] b = (int[])arr1.ToArray(Type.GetType("System.Int32"));
foreach (int i in b)
{
Console.WriteLine(i);
}
}
範例程式下載:





















