方法:方法其实就是函数(Function),有点是方便重使用
方法参数分为:
值参,不包含修饰符
引用参数,以ref修饰符声明
输出参数,out修饰符声明
数组型参数,params声明
Public static int NewMethod(int a,int b)
{
Return a>b?a:b;
}
引用传递分
使用out,和ref差不多。区别out参数变量在方法外可以不赋值但是在方法内必须重新赋值。
public static int GetMaxMin(int[] arr, out int min)
{ int max = arr[0]; min = arr[0];//out 在方法体内必须赋值
for (int i = 1; i < arr.Length; i++)
{ 7if (max < arr[i])
{
max = arr[i];
}
if (min > arr[i])
{
min = arr[i];
}
}
return max;
}
static void Main(string[] args)
{
int min, max;//out 返回min可以不赋值
//定义随机数,遍历成数组
Random ro = new Random();
int[] myArray = new int[10];
for (int i = 0; i < myArray.Length; i++)
{
myArray[i] = ro.Next(1, 100);
}
//遍历数组
for (int i = 0; i < myArray.Length; i++)
{Console.Write(myArray[i].ToString() + ",");}//调用方法返回最大值
max=GetMaxMin(myArray, out min);
Console.WriteLine("方法返回值max = {0},out参数返回值 min = {1}", max, min);
Console.ReadKey();}
方法的重载:
方法的名称相同,但是参数不同,用什么类型就调用什么类型的,像Console.WriteLine();
保证用参可数相同,类型不能相同
保证参数类型相同,个数不能相同
方法的重载与返回值类型没有关系,所以不能构成重载
方法的递归