C#之基础2---③(方法的重载,out传值,ref传值,VS代码格式化插件:注释对齐)

    今天我们来分享一下VS视频中第二组第三讲内容,这个视频主要是对方法的再次深入,涉及到了out传值,ref传值等方式。

一、概念类

     上一篇博客已对方法相关的概念进行了梳理,本篇不再赘述。

二、导图类

三、代码类

①、方法返回一个数组

 static void Main(string[] args)
        {
            int[] number = new int[] { 1,2,3,4,5,6,7,8,9};                     //定义number数组并赋值
            int[] Sum = ArraySum(number);                                      //调用ArrarySum方法
            string[] Name = new string[] { "最小值:", "最大值:", "总和:" };       //定义Name数组并赋值
            for (int i = 0; i < Sum.Length ; i++)                              //for循环
            {
                Console.WriteLine(Name[i]+Sum[i]);                             //在控制面板上写入内容:Name数组值+Sum[]数组值
            }
            Console.ReadKey();
        }

        public static int[] ArraySum(int[] nums)                             
        {
            int sum = 0;                                                       //声明变量
            int min = int.MaxValue;
            int max = int.MinValue;
            for (int i = 0; i < nums.Length ; i++)                             //for 循环
            {
                min = nums[i]<min ? nums[i] : min;                             //如果数组数值小于最小值,那么将数组数值赋予给min变量,否则将min值赋值给min变量
                max = nums[i] > max ? nums[i] : max;                           //如果数组数值大于最大值,那么将数组数值赋予给max变量,都在讲max值赋值给max变量
                sum+= nums[i];                                                 //变量sum=sum+nums[i]
            }
            int[] Sum = new int[] { min, max, sum };                           //将最小值,最大值,和赋予给Sum数组
            return Sum;                                                        //返回Sum数组
        }
    }

②、mytryparse(如果输入的是数字,则计算数字之和,如果不是数字则提示用户)

        static void Main(string[] args)
        {
            int num;
            Console.WriteLine("请输入数字");                                    //在控制台上写入内容
            bool result = MyTryParse(Console.ReadLine(), out num);              //调用MyTryParse方法,并输入方法参数
            if (result)                                                         //if语句
            {
                num += num;                                                     //num=num+num
                Console.WriteLine(num);                                         //将num的值写入控制台
            }
            else                                                                //否则
            {
                Console.WriteLine("您输入的不是数字,程序结束");                //在控制台上输入内容
            }
            Console.ReadKey();
        }
        /// <summary>
        /// 判断是否为数字
        /// </summary>
        /// <param name="strnumber">字符串</param>
        /// <param name="number">数字</param>
        /// <returns></returns>
        public static bool MyTryParse(string strnumber, out int number)
        {
            number = 0;                                                         //此方法中有out参数,需要在方法中赋值
            try                                                                 //try  catch 语句
            {
                number = int.Parse(strnumber);                                  // 将字符串类的值转换为int变量
                return true;                                                    //返回true
            }
            catch                                                               //如果try中出现错误,则返回false
            {
                return false;                                                   //返回false
            }
        }
    }

③、out 的传参

static void Main(string[] args)
        {
            int number1=10;                                        //定义变量
            int number2;
            int sum = AddNumber( out number1,out number2);         //AddNumber的参数number1,2所采用的值是从外面的方法中传过来的
            Console.WriteLine(number1);                            //所以此刻的number1的值为100
            Console.WriteLine(sum);                                //而返回的总和为:120
            Console.ReadKey();
        }
                                                                   //out修饰方法修饰参数了,那么在方法外面可以不给这个参数赋值,但是在方法里面必须给这个out修饰符的参数赋予初值
                                                                   //另外,参数加out,是把这个方法中的参数的值传到方法外面去了。
                                                                   //返回多个值,并且类型不同
        public static int AddNumber( out int num1,out int num2)    
        {
            num1 = 100;                                            //定义num1为100
            num2 = 200;
            return num1 + 20;                                      //返回100+20
        }

④、用方法实现字符串的分割

       static void Main(string[] args)
        {
            string[] str = { "路飞", "乔巴", "乌索普", "娜美" }; //定义字符串数组并赋值
            string str1 = FenGe(str);                            //调用FenGe方法,并将方法的返回值赋予给字符串变量
            Console.WriteLine(str1);                             //如何遍历的进行字符串数组的相加?通过for循环,让数组转换为字符串
            Console.ReadKey();
        }

        public static string FenGe(string[] str)
        {
            string str1="";                                      //定义字符串变量
            for (int i = 0; i < str.Length - 1; i++)             //for 循环,因为最后一个名称后面没有|符号,所以这里的循环长度要减一
            {
                
                str1 += str[i] + "|";                            //str1=str1+str[i]+|
            }
            return str1+str[str.Length -1];                      //返回数组str1的内容以及数组中的最后一个姓名
        } 
    }

四、拓展

VS代码格式化插件(等号自动对齐、注释自动对齐)

http://www.cnblogs.com/stevensfollower/p/4392618.html

以上便是第三讲的内容梳理,终于要看所谓的飞行棋了,下一站飞行棋走起^_^

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 14
    评论
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Elsa~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值