Mar*_*ers 6

你不能代替 int.TryParse while循环,但你可以使用它与 while循环,如下所示:

string keyboardInput = Console.ReadLine();

int response;
while (!int.TryParse(keyboardInput, out response)) {
    Console.WriteLine("Invalid input, try again.");
    keyboardInput = Console.ReadLine();
}
Run Code Online (Sandbox Code Playgroud)

另一种方法是将代码重构为单独的方法:

int readIntFromConsole()
{
    while (true)
    {
        string keyboardInput = Console.ReadLine();

        int result;
        if (int.TryParse(keyboardInput, out result))
        {
            return result;
        }
        else
        {
            Console.WriteLine("Invalid input, try again.");
        }
    }
}
Run Code Online (Sandbox Code Playgroud)