out参数

作者: a04a42f99657 | 来源:发表于2016-12-13 00:00 被阅读15次

    2016.12.12学的out参数

    out参数的作用

    • 如果你在一个方法中,返回多个相同类型的值的时候,可以考虑返回一个数组。

    • 但是,如果返回多个不同类型的值的时候,返回数组就不行了,那么这个时候,我们可以考虑使用out参数。

    • out参数就侧重于在一个方法中可以返回多个不同类型的值。
    • 举个例子

    static void Main(string[] args)
    {
    ////写一个方法,求一个数组的最大值,最小值,总和,平均值
    ////声明一个数组并赋值,求这个数组的最大值,最小值,总和,平均值
    //int[] nuber = {2, 4, 6, 8, 10 };
    //int[]res= mmp(nuber);

            //Console.WriteLine("这个数组的最大值是{0},这个数组的最小值是{1},这个数组的总和是{2},这个数组的平均值是{3}",res[0],res[1],res[2],res[3]);
            ////Array.Sort(nuber);
            ////foreach (int i in nuber)
            ////{
            ////    Console.WriteLine(i);
    
            ////}
            #region
            Console.WriteLine("请输入用户名");
            string userName = Console.ReadLine();
            Console.WriteLine("请输入密码");
            string passWord=Console.ReadLine();
            string mas;
            bool b = Islogin.isLogin(userName, passWord, out mas);
            Console.WriteLine("登陆结果{0}", b); 
            Console.WriteLine(mas);
            Console.ReadKey();
            #endregion
        }
        //创建一个静态方法,返回值是int[]数组,参数是一个int[]数组
        //public static int []mmp(int []nums)
        //{
        //    //Array.Sort(nums);
        //    //创建一个数组来储存返回的最大值,最小值,总和,平均值
        //    int[] res = new int[4] ;
        //    //给这个数组赋值
        //    res[0] = nums[0];//假设num[0]是这个数组的最大值
        //    res[1] = nums[1];//假设num[0]是这个数组的最小值
        //    res[2] = 0;//给res[2]赋值为0,用来存储总和,计算这个数组的总和方法为res[2]+=nums[i];
        //    //用for语句来遍历这个数组的每一个元素,求出这个数组的最大值和最小值。
        //    for (int i = 0; i < nums.Length; i++)
        //    {
        //        if (nums[i] > res[0])//条件判断语句,如果nums[i]里面的i个元素的值比假定的res[0]还大,那么把这个值赋给res[0].
        //        {
        //            res[0] = nums[i];
        //        }
        //        if (nums[i] < res[1])//条件判断语句,如果nums[i],里面的i个元素的值比假定的res[0]还小,那么 把这值赋给他。
        //        {
        //            res[1] = nums[i];
        //        }
        //        res[2] += nums[i];
        //    }
        //    res[3] = res[2] / nums.Length;
        //    return res;
    
        //}
    
           public  class Islogin
    {
        //分别提示用户输入用户名和密码
        //写一个方法来判断用户输入的用户名和密码是否正确
        //返回给用户一个登陆结果,并且还要返回一个登陆信息
        //如果用户名错误,除了返回登陆结果外还要返回一个“用户名错误”
        public static bool isLogin(string userName, string passWord, out string mas)
        {
            if(userName=="我是传奇"&&passWord=="123456")
            {
            
                mas = "恭喜你登陆成功";
                return true;
            }
            else if(userName=="我是传奇")
            {
               
                mas = "煞笔密码错了";
                
    
             }
            else if(passWord=="123456")
            {
                
                mas = "没找到这个用户";
               
            }
            else
            {
                mas = "未知错误";
               
            }
    
            return false;
        }
    
    
    
    }
    
    • 返回值的类型可以是很多类型,目前知道的int,bool,string都可以,
    • 求平均值要在for循环外面,
    • 返回值是什么类型的,你在调用这个函数的时候,必须要有一个这样类型的变量来接受返回值。

    相关文章

      网友评论

          本文标题:out参数

          本文链接:https://www.haomeiwen.com/subject/yojvmttx.html