1、如果在一个方法中返回多个相同类型的值,可以返回数组;
但如果想返回多个不同类型的值,则可以使用out参数:
static void Main(string[] args)
{
int[] number = {2, 3, 4, 5, 6};
int[] numbers = Retu(number); // 采用返回数组方法调用
int max = 0;
int min = 0;
int sum = 0;
float avg = 0;
// 调用具有out参数的方法之前,必须先声明接收out变量值的变量
Test(number, out max, out min, out sum, out avg);
}
public static int[] Retu(int[] nums)
{
int[] res[] = new res[4]; // 声明一个数组
res[0] = nums[0]; // 最大值
res[1] = nums[0]; // 最小值
res[2] = 0; <span style="white-space:pre"> </span> // 总和
return res[];
}
// out:多余返回最大值,最小值,总和,平均值
public static void Test(int[] nums, out int max, out int min, out int sum, out int avg)
{
// out参数要求在方法内必须为其赋值
}
2、ref参数:能够将一个变量代入方法中,在方法中进行运算之后,将改变之后的值再带出方法。
<span style="font-size:18px;">static void Main(string[] args)
{
double salary = 5000; // ref 变量在方法外必须赋值,在方法内可以不赋值。
JiangJin(ref salary);
Console.WriteLine(salary); // 输出:5500
Console.ReadKey();
}
public static void JiangJin(ref double s)
{
s += 500;
}</span>