1 回答
TA贡献1893条经验 获得超10个赞
当我查看源代码时,我看到了这个:
i + "" = String.Concat(object)哪个叫声 还有一个.所以它更慢。obj.ToString()String.Concat(object)
1st way) 使用 Console.WriteLine,它很简单:
public static void WriteLine(String value)
{
Out.WriteLine(value);
}
https://referencesource.microsoft.com/#mscorlib/system/console.cs,5ac7c4fda643413b
在内部,它创建 1 个值为 ' \r\n' 的缓冲区,并且只调用一次。.Write(char[], int, int)
第二种方式)当你用int调用它时,它是不同的。
public virtual void WriteLine(int value) {
Write(value);
WriteLine();
}
https://referencesource.microsoft.com/#mscorlib/system/console.cs,82d5745bf4a5ecc6
这样它就会调用两次。这可能是那种放缓,但我不能确定。它只是提示,问题可能在哪里。Write(char[], int, int)
编辑:
此外,第二种方式,它调用以获取数字的字符串表示形式,这是另一个开销,可以稍微减慢它的速度,因为它每次都可以获取该提供程序的实例。https://referencesource.microsoft.com/#mscorlib/system/globalization/numberformatinfo.cs,9c4284b5db21c23aint.ToString(IFormatProvider)
- 1 回答
- 0 关注
- 265 浏览
添加回答
举报
