C# params:参数数组

某些情况下,我们在定义函数时可能并不能提前确定参数的数量,这时可以使用 C# 提供的参数数组,参数数组通常用于为函数传递未知数量的参数。

若要使用参数数组,则需要利用 params 关键字,语法格式如下:

访问权限修饰符 返回值类型 函数名(params 类型名称[] 数组名称)

提示:使用参数数组时,既可以直接为函数传递一个数组作为参数,也可以使用函数名(参数1, 参数2, ..., 参数n)的形式传递若干个具体的值作为参数。

下面通过示例来演示以下参数数组的使用:
using System;

namespace c.biancheng.net
{
    class Demo
    {
        static void Main(string[] args){
            Demo Obj = new Demo();
            string str = Obj.getSum(1, 2, 3, 4, 5, 6);
            Console.WriteLine(str);
            int[] arr = {2, 4, 6, 8, 10};
            string str2 = Obj.getSum(arr);
            Console.WriteLine(str2);
        }
        public string getSum(params int[] arr){
            int sum = 0;
            string str = "";
            foreach(int i in arr){
                sum += i;
                str += "+ " + i + " ";
            }
            str = str.Trim('+');
            str += "= "+sum;
            return str;
        }
    }
}
运行结果如下:

1 + 2 + 3 + 4 + 5 + 6 = 21
2 + 4 + 6 + 8 + 10 = 30

提示:示例中用到的 Trim 方法可以用来去除字符串左右两边指定的字符,这里大家了解即可。