c# 方法可变数量的参数
c# 方法可变数量的参数
发布时间:2016-12-28 来源:查字典编辑
摘要:声明一个可变数量的参数:复制代码代码如下:StaticintAdd(paramsint[]values){intsum=0;if(value...

声明一个可变数量的参数:

复制代码 代码如下:

Static int Add(params int[] values)

{

int sum = 0;

if(value != null)

{

for(int x = 0;x<values.Length;x++)

sum += values[x];

}

return sum;

}

上面这个方法除去params,是一个普通的方法,接受int数组,返回组中的所以项之和。

我们可以这样调用:Add(new int[]{1,2,3});

但是阅读性不是很高,我们希望能更简洁:

Add(1,2,3);

这时,由于params关键字,是可以编译通过和运行的。

params只能应用于方法参数中的最后一个。

在c#编译器发现Add(1,2,3)时,会先寻找是否有Add(int i,int j,int k)匹配的方法,

如果有就调用,没有,就寻找是否有定义为Add(params int[] values)的方法,

如果有就把1、2、3先保存到一个数组里,然后调用Add(int[] values)方法。

这里也说明CLR对params关键字是一无所知的,params只是提供给c#编译器使用的。

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新C#教程学习
热门C#教程学习
编程开发子分类