C#中的ArrayList

Ros*_*han 2 c# arraylist

我们可以将ArrayLists作为参数传递给C#中的方法吗?

Jon*_*eet 18

绝对.但是,你很少应该.这些天你几乎应该总是使用泛型类型,例如List<T>.

此外,在声明方法的参数时,值得使用接口.例如,如果您有这样的方法:

public void SomeMethod(ArrayList list)
Run Code Online (Sandbox Code Playgroud)

然后任何人都要强制使用它ArrayList.他们List<T>即使愿意也不能使用.另一方面,如果您将方法声明为:

public void SomeMethod(IList list)
Run Code Online (Sandbox Code Playgroud)

然后他们可以使用泛型,即使你的代码不知道它们.


Kon*_*kus 5

当然,为什么不:

public void SomeMethod(ArrayList list)
{
    // your code here
}
Run Code Online (Sandbox Code Playgroud)

但正如Jon S.提到的那样,首选使用接口而不是硬编码类型.

public void SomeMethod(IList list)
{
    // your code here
}
Run Code Online (Sandbox Code Playgroud)

另见: