out参数

解决方法如果返回多个值,但可能类型不同的问题。

假设一个将整数字符串转为整数的方法。

代码如下:

var number = int.Parse("2"); // 结果:2
var number2 = int.Parse("Hello"); // 报错,与期望传递的值不匹配:只能传递整数类型的字符串
// 解决
if (int.TryParse("2", out var result))
{
    Console.WriteLine($"result = {result}"); // result  = 2
}
else
{
    // 转换失败,与期望传递的值不匹配
}

再比如以下功能代码:

/// <summary>
/// 获取当前用户id列表并返回总数
/// </summary>
/// <param name="total"></param>
/// <returns></returns>
public List<string> GetUserIds(out int total)
{
    var userIds = new List<string>
    {
        "1",
        "2",
        "3"
    };
    total = 9999;
    return userIds;
}
// 调用
var total = 0;
var userIds = GetUserIds(out total);
posted @ 2020-04-12 19:00  VTing4You  阅读(155)  评论(0编辑  收藏  举报