c#的out参数怎么使用

2023-05-05

这篇“c#的out参数怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“c#的out参数怎么使用”文章吧。

如果你在一个方法中,返回多个相同类型的值的时候,可以考虑返回一个数组。但是如果返回多个不同类型的值的时候,返回数组就不行了,那么我们我们可以考虑使用out参数。out参数就侧重于在一个方法中可以返回多个不同类型的值,当然它也可以返回多个相同类型的值。

///<summary///计算一个整数数组的最大值、最小值、平均值、总和///</summary>///<param name="nums">要求值的数组</param>///<param name="max">多余返回的最大值</param>///<param name="min">多余返回的最小值</param>///<param name="sum">多余返回的总和</param>///<param name="avg">多余返回的平均值</param>public static void Test(int[] nums, out int max, out int min,out int sum,out int avg) {    // out参数要求在方法的内部必须为其赋值    max = nums[0];    min = nums[0];    sum = 0;    for (int i =0; i< nums.length; i++)    {        if (nums[i] > max)        {            max = nums[i];        }        if (nums[i] < min)        {            min = nums[i];        }        sum += nums[i];    }    avg = sum / nums.Length;}

使用该方法,在main函数里面

int[] numbers = {1,2,3,4,5,6,7,8,9};int max = 0;int min = 0;int sum = 0;int avg = 0;Test(numbers,out max,out min, out sum, out avg);

调用时候起的名字,跟方法里面的名字不需要完全一样哦~比如这边可以改写成

int[] numbers = {1,2,3,4,5,6,7,8,9};int max1 = 0;int min1 = 0;int sum1 = 0;int avg1 = 0;Test(numbers,out max1,out min1, out sum1, out avg1);

这边其实还能不给它赋值,如下写法:

int[] numbers = {1,2,3,4,5,6,7,8,9};int max1;int min1;int sum1;int avg1;Test(numbers,out max1,out min1, out sum1, out avg1);

out参数一定一定要在内部返回值,否则报错。

来个小练习

static void Main(){    // 分别的提示用户输入用户名和密码    // 你写一个方法来判断用户输入的是否正确    // 返回给用户一个登录结果,并且还要单独的返回给用户一个登录信息    // 如果用户名错误,除了返回登录结果之外,还要返回一个"用户名错误"    // "密码错误"    Console.WriteLine("请输入用户名");    string userName = Console.ReadLine();    Console.WriteLine("请输入密码");    string userPwd = Console.ReadLine();    string msg;    bool b = IsLogin(userName, userPwd, out msg);    Console.WriteLine("登录结果{0}", b);    Console.WriteLine("登录信息{0}", msg);    Console.ReadKey();}
public static bool IsLogin(string name, string pwd, out string msg) {    if (name =="admin" && pwd == "888888") {        msg = "用户成功";        return true;    }    else if (name == "admin")    {        msg = "密码错误";        return false;    }    else if (pwd == "888888")    {        msg = "用户名错误";        return false;    }    else    {        msg = "未知错误";        return false;    }}

以上就是关于“c#的out参数怎么使用”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注本站行业资讯频道。

《c#的out参数怎么使用.doc》

下载本文的Word格式文档,以方便收藏与打印。