如果未输入int值,则会出错

时间:2016-03-18 16:29:31

标签: c# int

我一个月前开始使用c#,突然想到如果我没有为int值输入任何内容会发生什么。我收到了一个错误!如果你能提供帮助会很棒!

    public static void NullChecker()
    {

        Console.Write("Age: ");
        int age = Convert.ToInt16(Console.ReadLine());

        if (age != null)
        {

            if (age >= 16)
            {

                Console.WriteLine("Welcome!");

            }

            else
            {

                Console.WriteLine("You are too young!");
                Console.WriteLine("See you soon!");
            }

        }
        else
        {

            Console.WriteLine("You cant leave it blank!");

        }

    }

我想知道我怎么知道他什么都没有输入并将他重新引导回来。谢谢你!

1 个答案:

答案 0 :(得分:0)

您可以使用函数Int32.TryParse()。无论给定的字符串是否为有效整数,都将返回一个布尔值。

public static void NullChecker() {

    Console.Write("Age: ");
    String input = Console.ReadLine();

    int age = 0;
    if (Int32.TryParse(input, out age))
    {
        if (age >= 16)
        {

            Console.WriteLine("Welcome!");

        }

        else
        {

            Console.WriteLine("You are too young!");
            Console.WriteLine("See you soon!");
        }

    }
    else
    {

        Console.WriteLine("You cant leave it blank!");

    }

}