我想創建一個接受任何類型的列表的方法,所以我不必創建一個方法來處理每一種列表對象類型。它說我的l對象變量是無效的。傳遞通用列表到方法
我的代碼
static void Main(string[] args)
{
List <Person> l;
testList(l);
}
public void testList(List<object> x)
{
}
我想創建一個接受任何類型的列表的方法,所以我不必創建一個方法來處理每一種列表對象類型。它說我的l對象變量是無效的。傳遞通用列表到方法
我的代碼
static void Main(string[] args)
{
List <Person> l;
testList(l);
}
public void testList(List<object> x)
{
}
static void Main(string[] args)
{
List <Person> list1;
testList<Person>(list1);
List <OtherClassObj> list2;
testList<OtherClassObj>(list2)
}
//Here T is type of object
public void testList<T>(List<T> x)
{
if (typeof(T) == typeof(Person))
//Prosess Person's List
}
它的工作!謝謝! –
你需要讓你的方法也是通用的(通過添加一個泛型參數的方法)。這應該可行,但請確保您分配您的列表(例如List<Person l = new List<Person>();
)。另外,只是一個提醒,看起來像你從一個靜態方法調用它,確保也添加靜態的方法以及。
希望它有幫助!
你讓它工作?我希望我回答你的問題! :) – mindOfAi