This question already has answers here:
What's the main difference between int.Parse() and Convert.ToInt32

(13个回答)


已关闭8年。




C#中,您可以同时使用Int32.ParseConvert.ToInt32将字符串转换为Int32。它们之间有什么区别?哪个表现更好?在什么情况下应使用Convert.ToInt32而不是Int32.Parse,反之亦然?

最佳答案

如果将ReflectorILSpy放在mscorlib中,您将看到以下Convert.ToInt32的代码

public static int ToInt32(string value)
{
    if (value == null)
    {
        return 0;
    }
    return int.Parse(value, CultureInfo.CurrentCulture);
}

因此,内部使用int.Parse但使用CurrentCulture
从代码中实际上是可以理解的,为什么当我像参数一样指定null时,此方法不会引发异常。

关于c# - Convert.ToInt32和Int32.Parse有什么区别?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15894963/

10-10 16:50