一、ref&out
共同点:两者都是对基本类型(int、bool、float、double···等)以及string的值进行修改。
不同点:ref是对有值参数(有初始化的参数)经行修改,out是对无值参数(没有经行初始化的参数)修改。
二、可变参数params
static int Sum(int nul,params int[] nums)
{
return nums.Sum();
}
static void Main(string[] args)
{
Console.WriteLine(Sum(1, 2, 3, 4));
}
必须为参数最后一位
三、递归&抛出异常
static void Main(string[] args)
{
for (int i = 1; i <= 10; i++)
{
Console.WriteLine(Fib(i));
}
Console.WriteLine(FileOrDirCount("D:/"));
}
//斐波那契额数列 递归演示
static long Fib(long n)
{
if (n == 1 || n == 2) return 1;
return Fib(n - 1) + Fib(n - 2);
}
//用递归查询文件数量
static long FileOrDirCount(string path)
{
long count = 0;
//处理异常 可能会遇到无法访问的文件夹