c#中可变参数(params关键字的使用)

一、params 是C#开发语言中关键字, params主要的用处是在给函数传参数的时候用,就是当函数的参数不固定的时候。 在方法声明中的 params 关键字之后不允许任何其他参数,并且在方法声明中只允许一个 params 关键字。 关于参数数组,需掌握以下几点。

1、若形参表中含一个参数数组,则该参数数组必须位于形参列表的最后。

2、不允许将params修饰符与ref和out修饰符组合起来使用。

3、参数数组必须是一维数组。

4、与参数数组对应的实参可以是同一类型的数组名,也可以是任意多个与该数组的元素属于同一类型的变量。

5、若实参是数组则按引用传递,若实参是变量或表达式则按值传递。

二、示例代码

示例代码以返回最大值为例。

1、方法定义:

 1 public class ExercisesEight
 2 {
 3 public static int paramsShowMaxValue(params int[] arr)
 4 {
 5 int maxValue = 0;
 6 if (arr != null && arr.Length > 0)
 7 {
 8 Array.Sort(arr);
 9 maxValue = arr[arr.Length - 1];
10 }
11 return maxValue;
12 }
13 public static void paramsShowMaxValue(string str,params int[] arr)
14 {
15 
16 {
17 //dosomething........
18 }
19 }
20 
21 
22 }

2、调用方法

Console.WriteLine($"最大值为:{ExercisesEight.paramsShowMaxValue()}");
Console.WriteLine($"最大值为:{ExercisesEight.paramsShowMaxValue(5)}");
Console.WriteLine($"最大值为:{ExercisesEight.paramsShowMaxValue(15,2)}");
Console.WriteLine($"最大值为:{ExercisesEight.paramsShowMaxValue(5,9,6,7,20,90,100,99)}");
Console.WriteLine($"最大值为:{ExercisesEight.paramsShowMaxValue(new int[] { 6,5,2,7,10,20,60,4})}");

  

输出结果:

原文地址:https://www.cnblogs.com/maowp/p/8134342.html