1 回答

TA貢獻(xiàn)1893條經(jīng)驗(yàn) 獲得超10個(gè)贊
當(dāng)我查看源代碼時(shí),我看到了這個(gè):
i + "" = String.Concat(object)哪個(gè)叫聲 還有一個(gè).所以它更慢。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
在內(nèi)部,它創(chuàng)建 1 個(gè)值為 ' \r\n' 的緩沖區(qū),并且只調(diào)用一次。.Write(char[], int, int)
第二種方式)當(dāng)你用int調(diào)用它時(shí),它是不同的。
public virtual void WriteLine(int value) {
Write(value);
WriteLine();
}
https://referencesource.microsoft.com/#mscorlib/system/console.cs,82d5745bf4a5ecc6
這樣它就會(huì)調(diào)用兩次。這可能是那種放緩,但我不能確定。它只是提示,問題可能在哪里。Write(char[], int, int)
編輯:
此外,第二種方式,它調(diào)用以獲取數(shù)字的字符串表示形式,這是另一個(gè)開銷,可以稍微減慢它的速度,因?yàn)樗看味伎梢垣@取該提供程序的實(shí)例。https://referencesource.microsoft.com/#mscorlib/system/globalization/numberformatinfo.cs,9c4284b5db21c23aint.ToString(IFormatProvider)
- 1 回答
- 0 關(guān)注
- 171 瀏覽
添加回答
舉報(bào)