什么叫方法重载:
1)一般在同一个类中方法名相同,并且方法的参数个数不同,或者对应位置上的类型不同,才能构成方法的重载
2)方法重载和返回值没有关系
参数返回值:
例如:
static void Main(string[] args)
{
int number;
int result = Test(out number);
Console.WriteLine("number={0} result={1}",number,result);
Console.ReadKey();
}
public static int Test(out int a)
{
a = 20;
return a;
如上代码
实现步凑:
1)在方法的参数类型前面加out,那么传参数的时候,也必须在number前加加out.表明这个参数不是传入的,而是用业传出值的.
2)如果参数是以out形式传入的,那么在传入前可以不赋初值
3)在方法中对于由 out修饰的参数,必须在使用前赋值,
int.TryParse
string s = "123";
int re;
{
if (int.TryParse(s, out re) == true)
{
Console.WriteLine("转换成功");
}
else
{
Console.WriteLine("转换失败");
}
}
Console.ReadKey();
static void Main(string[] args)
{
string s = "123";
int re;
if (IntTryParse(s,out re))
{
Console.WriteLine("转换成功{0}",re);
}
else
{
Console.WriteLine("转换失败");
}
Console.ReadKey();
}
public static bool IntTryParse(string s, out int result)
{
result=0;
try
{
result = Convert.ToInt32(s);
return true;
}
catch
{
return false;
}
}
static void Main(string[] args)
{
//string s = "123";
//int re;
//if (IntTryParse(s,out re))
//{
// Console.WriteLine("转换成功{0}",re);
//}
//else
//{
// Console.WriteLine("转换失败");
//}
//Console.ReadKey();
int[] nums={1,3,5,8,9};
int max, min, sum;
sum = comput(nums,out max,out min);
Console.WriteLine("和{0}
最大{1}
最小{2}",sum,max,min );
Console.ReadKey();
}
/// <summary>
/// 返回三个数
/// </summary>
/// <param name="numbers"></param>
/// <param name="max"></param>
/// <param name="min"></param>
/// <returns></returns>
public static int comput(int[] numbers, out int max, out int min)
{
int sum = 0;
max = numbers[0];
min = numbers[0];
for (int i = 0; i < numbers.Length;i++ )
{
sum += numbers[i];
if(numbers[i]>max)
{
max = numbers[i];
}
if(numbers[i]<min)
{
min = numbers[i];
}
}
return sum;
}