参数数组 和 函数
❓问题
定义一个函数,用来取得数字的和,但是数字的个数不确定。
解决方案:
1、定义一个函数,参数传递过来一个数组;
2、定义一个参数个数不确定的函数,这个时候我们就要使用参数数组。
除了参数数组,所有函数的参数都是固定的,那么调用的时候,参数是一定要传递的
参数数组的定义(使⽤的时候,当成数组使⽤即可,传递的时候参数任意个)
c#static int Add(params int[] array)
{
}
注
这里定义了一个int类型的参数数组,参数数组和数组参数(上面的)的不同,在于函数的调用,调用参数数组的函数的时候,我们可以传递过来任意多个参数,然后编译器会帮我们自动组拼成一个数组,参数如果是上面的数组参数,那么这个数组我们自己去手动创建
参数数组就是帮我们 减少了一个创建数组的过程
c# static int Add1(int a,int b) //不加params
{
return a + b;
}
static int Add2(int[] array) //不加params
{
int sum = 0;
foreach (int temp in array)
{
sum += temp;
}
return sum;
}
static int Add3(params int[] array) //可以传递任意个个数的参数 //加params
{
int sum = 0;
foreach (int temp in array)
{
sum += temp;
}
return sum;
}
static void Main(string[] args) //主函数入口
{
int sum1 = Add2(new int[] { 2, 4, 8 }); //调用1
Console.WriteLine(sum1);
int[] array2 = { 6, 8, 9 };
int sum2 = Add2(array2); //调用2
Console.WriteLine(sum2);
int sum3 = Add3(6, 8, 1);
Console.WriteLine(sum3); //调用3
int sum4 = Add3( 1,3,5,7,9,2); //调用3
Console.WriteLine(sum4);
}