手机
当前位置:查字典教程网 >编程开发 >asp.net教程 >用C#中的params关键字实现方法形参个数可变
用C#中的params关键字实现方法形参个数可变
摘要:例如,下面代码:复制代码代码如下:classProgram{staticvoidMain(string[]args){Console.Wri...

例如,下面代码:

复制代码 代码如下:

class Program

{

static void Main(string[] args)

{

Console.WriteLine(Sum(1));

Console.WriteLine(Sum(1, 2, 3));

Console.WriteLine(Sum(1, 2, 3, 4, 5));

Console.ReadKey();

}

private static int Sum(params int[] values)

{

int sum = 0;

foreach (int value in values)

sum += value;

return sum;

}

}

实现了一个Sum方法,用于接收一组整数,并返回它们的和。参数values被加上params关键字后,在调用时可以在实参列表中列举出这组整数中的每个元素,非常方便。

关于params关键字的用法,需要注意以下几点:

1. params只能用于一维数组,不能用于多维数组和诸如ArrayList、List<T>等任何类似于数组的集合类型。

2. 被加上params关键字的形参,必须是形参列表中最后一个形参,并且方法声明中只允许一个 params 关键字。

3. 用params关键字的方法,有三种调用形式:

第一种,列举出数组各元素:Sum(1,2,3),这也是最常用的形式;

第二种,像没有加params关键字的数组形参那样,用数组名做实参:Sum(new int[]{1,2,3})或int n=new int[]{1,2,3};Sum(n);;

第三种,加params关键字的参数在调用时可以省略:Sum();//返回0;这种方式有时可以少定义一个方法重载,但当明确定义了重载int Sum()时,编译器会优先调用int Sum(),而不是Sum(params int[] values)。而且省略params型参数,方法内部仍会new一个元素个数为0的数组,效率略查。

第四种,不省略params型参数,用null代替,效率比第三种略高,因为其内部不会new这个数组。

【用C#中的params关键字实现方法形参个数可变】相关文章:

用WebClient.UploadData方法上载文件数据的方法

asp.net post方法中参数取不出来的解决方法

c# 调用WinRAR 实现文件压缩、文件解压WinRAR命令行参数不弹窗

Net中实现无限分类的2个例子

利用AJAX与数据岛实现无刷新绑定

ASP.NET程序中用Repeater实现分页

ASP.net(c#)用类的思想实现插入数据到ACCESS例子

asp.net下gridview 批量删除的实现方法第1/3页

用CSS实现图片倾斜 只支持IE

在ASP.NET中实现多文件上传的方法

精品推荐
分类导航