可选参数

来源:互联网 发布:mac的显卡怎么样 编辑:程序博客网 时间:2024/06/02 23:12
         ///方法一:当前方法的作用是求所有参数的总和
        /// </sumary>
        public static  int add(int i, int j, int k)
        {
            return i + j + k;

        }

       需求升级:如果当前方法需要传递一个参数和第四个参数,参数数目不变,这个时候需要引入可数参数传递

        /// <summary>
        /// 方法二:当前方法的作用就是求参数当中部分参数的总和
        /// 需  求:希望第一个参数必须传递,第二,三个参数不传递,第四个参数需要传递
        /// 这个时候可以使用":"符号来进行辅助传递
        /// </summary>
        /// <param name="args"></param>
        public static int add(int i, int j = 0, int k = 0, int g = 0)
        {
            return i + j+k+g;
        }



             int testOne = add(1,2,3); //打印6
            //当前方法需要四个参数,但是只有一个参数是必要参数,也就是必须要填写的参数
            //后面的三个参数可以传,也可以不传
            //如果后面的三个参数使用":"这个符号来进行传递,那么表示的就是根据参数名称来进行匹配(和方法名里面的参数名进行匹配)
            int testTwo = add(5);    //打印5                    A
            // int testTwo = add(5,M:6);    //会报错 因为当前的方法中没有名字为M的参数名
            // int testTwo = add(5,g:6);    //打印11               B
            Console.WriteLine(testOne+"\t"+testTwo);
            Console.ReadKey();


           备注:上面有两个方法,第一个方法是需要传递三个参数,缺一个就会报错,第二个方法第一个参数是必填参数,后面三个参数可以选择性的传递,如果需要传递参数

                       需要使用":"这个符号来进行传递,而不是使用"="来进行传递,使用这个符号后,被调用的方法会根据传递过去的参数名进行匹配,如果不相同,则会报错,见

                       标注"C",如果希望正确调用,见标注"B",如果不希望传递可选参数,只传一个必填参数,见标注"A"

  

原创粉丝点击