如何验证用户输入是否为整数?

Nam*_*ace 5 c# validation console input

它告诉我它无法将int转换为bool.试过TryParse,但由于某种原因,参数列表无效.

码:

private void SetNumber(string n)
{
    // if user input is a number then
    if (int.Parse(n)) 
    {
        // if user input is negative
        if (h < 0)
        {
            // assign absolute version of user input
            number = Math.Abs(n); 
        }
        else 
        {
            // else assign user input
            number = n;
        }
    }
    else
    {
        number = 0; // if user input is not an int then set number to 0  
    }
}
Run Code Online (Sandbox Code Playgroud)

Rei*_*ica 14

您可能非常接近使用TryParse,但我猜您忘记了out参数上的关键字:

int value;
if (int.TryParse(n, out value))
{

}
Run Code Online (Sandbox Code Playgroud)


Mik*_*erg 6

只要用这个:

int i;
bool success = int.TryParse(n, out i);
Run Code Online (Sandbox Code Playgroud)

如果解析成功,successtrue.

如果那个案子i包含这个号码.

你之前可能错误地使用了out参数修饰符.它具有out修饰符,表示它是在被调用的方法中初始化的值.