.NET基础-7

方法的重载:

方法名称相同,但是方法的参数个数,或者参数类型不相同.参数个数不同或者参数类型不同称为参数列表不同.这里没有提到返回值,说明参数的重载只和参数列表有关,与函数的返回值无关


params:可变参数数组

static void Main(string[] args)

        {

           int[] nums={1,2,3,4,5,6};

            GetScore("张三", 78, 90, 30);//第一种调用方式

            GetScore("张三", nums);//第二种调用方式

            Console.ReadKey();
        }
        /// <summary>
        /// params必须在形参这种使用,不能再调用函数的时候使用
        /// params必须放在参数列表的在最后一位
        /// </summary>
        /// <param name="name"></param>
        /// <param name="score"></param>
        private static void GetScore(string name, params int[] score)
        {
            int sum = 0;
            for (int i = 0; i < score.Length; i++)
            {
                sum += score[i];
            }

            Console.WriteLine("{0}的总成绩是{1}", name, sum);

        }


递归:

在方法的内部自己调用自己

public static void TellStory(int i)
        {
            Console.WriteLine("从前有座山");
            Console.WriteLine("山里有座庙");
            Console.WriteLine("庙里有个老和尚");
            Console.WriteLine("老和尚在给小和尚讲故事");
            Console.WriteLine("讲的什么呢");
            Console.WriteLine("讲的是");

            i++;
            if (i > 5)
            {

                return;//调试的时候可以发现,会多次调到下面的TellStory,然后到结尾

                           //因为这里会多次进入方法TellStory(),跳出的时候回一层层的跳出来

            }
            else
            {
                TellStory(i);
            }

        }






猜你喜欢

转载自blog.csdn.net/m0_37532448/article/details/80226805
今日推荐