在C#中,toArray是一個數組的方法,用于將集合轉換為數組。但是有時候我們希望在不同的集合類型上使用toArray方法,這時候我們可以定義一個擴展方法來實現這個功能。
下面是一個示例代碼,演示了如何定義一個擴展方法toArray,使其可以在不同的集合類型上使用:
using System;
using System.Collections.Generic;
public static class CollectionExtensions
{
public static T[] toArray<T>(this ICollection<T> collection)
{
T[] array = new T[collection.Count];
collection.CopyTo(array, 0);
return array;
}
}
class Program
{
static void Main()
{
List<int> list = new List<int> { 1, 2, 3, 4, 5 };
int[] array = list.toArray();
foreach (int num in array)
{
Console.WriteLine(num);
}
}
}
在上面的示例代碼中,我們定義了一個擴展方法toArray,它接受一個ICollection
通過定義擴展方法toArray,我們可以在不同的集合類型上使用該方法,使代碼更加靈活和可復用。