可能重複:
In C#, should I use string.Empty or String.Empty or 「」 ?C#優化返回一個空字符串
是更好地
return string.Empty;
,而不是
return "";
您怎麼看?
可能重複:
In C#, should I use string.Empty or String.Empty or 「」 ?C#優化返回一個空字符串
是更好地
return string.Empty;
,而不是
return "";
您怎麼看?
編譯完成後兩者完全相同。我發現string.Empty
更具可讀性。對於我們所知的""
真的應該有一些東西,它只是一個錯字。
一旦編譯器完成該代碼,兩個片段的IL /機器代碼將是相同的。如果空字符串是算法的重要組成部分,我傾向於使用string.Empty
。我傾向於使用""
作爲任何值,但現在它恰好是空字符串。換句話說,使用傳達表達意圖的那個。
根據this MSDN blog poststring.Empty
更有效,因爲它不會產生新的對象。
Here是一些更多的信息,包括一個簡短的性能比較。
是的,但它是.NET 2.0之前的版本:http://stackoverflow.com/questions/151472/what-is-the-difference-between-string-empty-and ;-) – 2010-08-20 20:50:48
博客帖子不正確。字符串文字僅在裝入程序集時創建一次(就像String.Empty屬性的字符串對象一樣),執行使用字符串字符串的代碼不會創建對象。 – Guffa 2010-08-20 20:53:40
此外,當您確實需要空字符串「」時,很難發現類似「'」的錯字。 – Guffa 2010-08-20 20:58:54