方法:就是将一坨代码重用的一种机制。
语法:
[访问修饰符] static 返回值类型 方法名([参数列表])
{
方法体;
return 返回值;
}
访问修饰符:访问的权限 一般有public(公共的) private(私有的)现阶段一把都用public;
static :静态的,
返回值类型;如果这个方法没有返回值的话 就写个void, 如果有返回值的话,就写相对应的返回值类型。
方法名: 必须要符合Pascal,每个单词的首字母都要大写,
参数的列表:完成这个方法所必须要的条件,如果没有参数的话小括号也不能省略。
方法写完后要在Main()方法中调用;
调用方法的语法:
类名.方法名();
如果写的方法在同一个类中即(Program),那么在调用方法时可以省略类名 直接写方法名.
return:
1. 返回要返回的值;
2. 结束当前方法的执行;
方法的功能一定要单一。
例如://比较两个数的大小
static void Main(string[] args)
{
Console.WriteLine("请输入第一个数字");
int numberOne = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("请输入第二个数字");
int numberTwo = Convert.ToInt32(Console.ReadLine());
int max = GetMax(numberOne, numberTwo);//方法的调用;
Console.WriteLine(max);
Console.ReadKey();
}
public static int GetMax(int n1, int n2)//新建的方法 有两int类型个参数:n1,n2 且有返回值
{
return n1 > n2 ? n1 : n2;
}
当方法要返回多个不同类型值时 要使用out参数,
使用out参数是要注意:
1.out参数在方法内必须要为其赋值,在方法外可以不为其赋值。
2.out参数侧重于返回多个参数。
例如//求一个数组的最大值、最小值、平均值
static void Main(string[] args)
{
int[] nums = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
int min;
int avg;
int max=GetMaxMinAvg(nums,out min,out avg);
Console.WriteLine("这个数组的最大值是{0},最小值是{1},平均值是{2}", max, min, avg);
Console.ReadKey();
}
public static int GetMaxMinAvg(int[] nums,out int min, out int avg)
{
int max = nums[0];
min = nums[0];
avg = 0;
int sum = 0;
for (int i = 0; i < nums.Length; i++)
{
if (nums[i] > max)
{
max = nums[i];
}
if (nums[i] < min)
{
min = nums[i];
}
sum += nums[i];
}
avg = sum / nums.Length;
return max;
}
ref参数侧重于,将一个值带入一个方法内进行改变,改变完成后 再将这个值带出来。
使用ref参数时要注意:
ref参数在方法外必须为其赋值
例如://写一个方法 交换两个int类型的变量
static void Main(string[] args)
{
int numberOne=10;
int numberTwo=20;
Change(ref numberOne,ref numberTwo);
Console.WriteLine("交换后 numberOne的值是{0},numberTwo的值是{1}",numberOne,numberTwo);
Console.ReadKey();
}
public static void Change(ref int n1,ref int n2)
{
int temp=n1;
n1=n2;
n2=temp;
}
转载于:https://www.cnblogs.com/mengleim/p/3244019.html