C#7.0模式匹配与new out参数混合

时间:2017-05-10 07:13:01

标签: c# c#-7.0

我的目标是在c#7.0中使用 Pattern 匹配和新 out 变量来解析和打印传入变量。然而,该方法抱怨未初始化的局部变量' i'。不知道我哪里出错了?

static void Main(string[] args)
{
    var input = "23";
    Print(input);
}

static void Print(object o)
{            
    if (o is int || (o is string && int.TryParse((string)o, out int i)))
        Console.WriteLine(i.ToString());            
}

1 个答案:

答案 0 :(得分:6)

<!DOCTYPE html> <html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> </head> <body> <div class="row"> </div> <div class="center" style="width:50%"> Hello World </div> </body> </html>无法确保设置。如果io is int,则true的第二部分不会被执行。

您必须在第一个条件中指定if

i