C#——param关键字的使用

C#的param 关键字常用于对数据库进行操作的方法,通过param关键字可以防止SQL注入问题。


代码举例:


static void Main(string[] args)
{
 	Console.WriteLine(Sum(1));
	Console.WriteLine(Sum(1, 2, 3));
	Console.WriteLine(Sum(1, 2, 3, 4, 5));
}

private static int Sum(params int[] values) 
{ 
	int sum = 0; 
	foreach (int value in values) 
		sum += value; 
	return sum; 
} 

程序输出
在这里插入图片描述
该函数接收一组整数,返回值是所有整数的和,其中参数加上了param关键字后,可以在调用时在实参列表中直接列举出这组整数中的每个元素,而不需要专门定义数组进行

关于params关键字的用法,需要注意以下几点:
1. params只能用于一维数组,不能用于多维数组和诸如ArrayList、List等任何类似于数组的集合类型。
2. 被加上params关键字的形参,必须是形参列表中最后一个形参,并且方法声明中只允许一个 params 关键字。
3. 用params关键字的方法,有四种调用形式:

  (1)列举出数组各元素:Sum(1,2,3),这也是最常用的形式;
  (2)像没有加params关键字的数组形参那样,用数组名做实参:Sum(new int[]{1,2,3})或int n=new int[{1,2,3};Sum(n);;
  (3)加params关键字的参数在调用时可以省略:Sum();//返回0;这种方式有时可以少定义一个方法重载,但当明确定义了重载int Sum()时,编译器会优先调用int Sum(),而不是Sum(params int[] values)。而且省略params型参数,方法内部仍会new一个元素个数为0的数组,效率略查。
  (4)不省略params型参数,用null代替,效率比第三种略高,因为其内部不会new这个数组。
 

参考:
浅谈.net中的params关键字

发布了68 篇原创文章 · 获赞 12 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_35077107/article/details/104275253