-10
//the code  
parseAttempt = while (KeyBoardInput, out Response);
4

1 に答える 1

6

while ループに置き換える ことはできませんが、次のように while ループint.TryParse使用できます。

string keyboardInput = Console.ReadLine();

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

もう 1 つの方法は、コードを別のメソッドにリファクタリングすることです。

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.");
        }
    }
}
于 2012-08-26T11:28:45.823 に答える