哪个更快,更高效:Convert.ToInt32()或三元运算符?

时间:2019-07-03 00:10:46

标签: c# .net int boolean ternary-operator

如果我必须在C#中将bool转换为int,以下两个选项中的哪一个会更快,更有效?

int x = Convert.ToInt32(someBool);

int x = someBool ? 1 : 0;

1 个答案:

答案 0 :(得分:4)

如果您拆解Convert.ToInt32(bool value),则会看到它是如何实现的:

public static int ToInt32(bool value)
{
    return value ? 1 : 0;
}

参考:https://referencesource.microsoft.com/#mscorlib/system/convert.cs,d75d8ee9b3529289