问:什么是方法递归?
答:方法自己调用自己。
看一段代码:
class Program{
    static void Main(string[] args)
    {
        TellStory();
        Console.ReadKey();
    }
    public static void TellStory()
    {
        Console.WriteLine("从前有座山");
        Console.WriteLine("山里有座庙");
        Console.WriteLine("庙里有个老和尚和小和尚");
        Console.WriteLine("有一天,小和尚哭了,老和尚给小和尚讲了一个故事");
        TellStory();
     }
}
看如下代码:
class Program{
    static void Main(string[] args)
    {
        TellStory();
        Console.ReadKey();
    }
    public static int i = 0;
    public static void TellStory()
    {
        Console.WriteLine("从前有座山");
        Console.WriteLine("山里有座庙");
        Console.WriteLine("庙里有个老和尚和小和尚");
        Console.WriteLine("有一天,小和尚哭了,老和尚给小和尚讲了一个故事");
        i++;
        if( i >= 10){
            return ; // 跳出循环
        }
        TellStory();
     }
}添加了静态字段。为什么能够把它当做全局变量处理呢?因为它的整个作用域是类,而函数都是类当中的,所以每个方法都能使用到这个类当中的字段。









