我想创建一个以C#List数据类型作为参数的函数。
public void foo(List<Something> obj)
{
...
}
但是我希望将任何List类型传递给函数,我的意思是,像这样
List<Class1> obj1 = new List<Class1>();
foo(obj1);
List<Class2> obj2 = new List<Class2>();
foo(obj2);
我可以这样做吗?这该怎么做?提前致谢
答案 0 :(得分:4)
答案 1 :(得分:3)
使用generics。
public void foo<T>(List<T> obj)
{
...
}
像
一样打电话 foo<Class1>(new List<Class1>());
foo<Class2>(new List<Class2>());
可以进一步简化上述内容
foo(new List<Class1>());
foo(new List<Class2>());