以前经常能看到这个关键字的,但是一直也没注意到它的用法,和作用;凭字面理解,就是参数的意思。今天看到了之后突然想了解一下这个关键字的用法,做了点小测试,算是基本了解了它的用法。
params固然表示的是参数的意思,我看,用到params关键字的用法都是用来表示形参为数组的。
比如我创建了一个方法,要传入一个参数,参数是string数组,平时的写法是这样的
private void Method(string[] param){
foreach(string item in param){
Console.WriteLine(item);
}
}
这样的传参就是如下形式:
Method(new string[]{"P1","P2","P3","...","P4"});
//或者这样
string[] param=new string[]{"P1","P2","P3","...","P4"};
Method(param);
然而使用了params的形式就变为如下形式:
private static void Method(params string[] Range)
{
foreach (string item in Range)
{
Console.WriteLine(item);
}
}
传参的时候可以继续使用上面的形式传参,但是除了上面的形式外有多了这样的形式:
Method("参数1","参数2","参数3","参数4","参数5","参数N");
类似重载。
使用params关键字要注意的一点:
使用params关键字修饰的参数要在形参列表的最后。
鉴于上面这点,所以,形参列表中只能有一个参数使用params关键字修饰,且必须是最后一个参数。
原文地址: http://luacloud.com/2011/scharp-params-method.html