有那么一个语句int value=int.parse(Console.readline());来实现输入一个整数,但很不幸,运行时我输入了一个小数,结果程序出错,请问怎么解决这个问题啊!!

解决方案 »

  1.   

    int value;
    if (int.TryParse(Console.ReadLine(), out value))
    {
      // OK
    }
    else
    {
      // input error
    }
      

  2.   

    能不能详细说说这个TryParse的用法呢,谢谢!!
      

  3.   

    Int32.TryParse 方法public static bool TryParse(
    string s,
    out int result
    )参数
    s
    类型:System.String包含要转换的数字的字符串。result
    类型:System.Int32当此方法返回时,如果转换成功,则包含与 s 所包含的数字等效的 32 位有符号整数值;如果转换失败,则包含零。如果 s 参数为 nullNothingnullptrnull 引用(在 Visual Basic 中为 Nothing),格式不正确,或者表示的数字小于 MinValue 或大于 MaxValue,则转换会失败。该参数未经初始化即被传递。返回值
    类型:System.Boolean如果 s 转换成功,则为 true;否则为 false。备注TryParse 方法类似于 Parse 方法,不同之处在于 TryParse 方法在转换失败时不引发异常。s 参数包含一个如下形式的数字: [ws][sign]digits[ws] 方括号([ 和 ])中的项是可选的;其他项的值如下所示。ws
    可选的空白。sign
    一个可选符号。digits
    一系列从 0 到 9 之间的数字。s 参数是使用针对当前系统区域性初始化的 NumberFormatInfo 对象中的格式设置信息分析的。有关更多信息,请参见 CurrentInfo。