c#中params干嘛用的

来源:百度知道 编辑:UC知道 时间:2024/05/22 13:02:09
static int sub(params int[] a) {
int sub=0;

foreach (int i in a)
{

sub += i;
}
return sub;

}

static void Main(string[] args)
{
int[] a ={ 1, 2, 3, 4 };

Console.WriteLine(sub(a));
Console.ReadKey();

}

和把params去掉,结果不是都一样嘛,

params 表示不定长参数.
象这里可以这样用:
int a = sub(1,2,3);
int a = sub(1,2,3,4,5,6,7,8,9);

这样都是正确的

去掉params只能写成这种形式调用:
sub(a);

加上params可以用这种形式调用:
sub(1,2,3,4,5,6,7);
返回这7个数字的和

params 关键字可以指定在参数数目可变处采用参数的方法参数。
在上面的程序中,参数调用时相对使用params增加了程序的可阅读性,在高长度数组调用时也有一定的优化作用。

这是c#里的参数数组,一般放在函数形参列表的最后,里面可以放任意数量的参数,比方console.writeline()里就采用了这种技术。