[C#] 001.正確操作字串 - (字串相加效能佳的用法)

讀【157個完美化C#的建議】一書的理解筆記。

 

重點: 字串的操作通常考量以下兩點,範例說明:

1. 封裝次數

2. 記憶體消耗

 

以下是C#字串相加數值,第一段是常用的 +  ,第二段為.ToString()

第一段 (對123 進行了 string -> object -> string 的工作, + 號都會對記憶體New一個新物件): 

string exampleA = "string" + 123;

第二段(效能較好, 123少了object 的封裝 ):

string exapmleB = "string" + 123.ToString();

 

第一段封裝的工作實際上就是記憶體的消耗。

 

推薦的做法是使用以下兩種寫法

 

1. 使用StringBuilder,※stringBuilder 在 以16字元為單位 ,當超過時才會進行記憶體配置

StringBuilder exampleA = new StringBuilder("string");

exampleA .Append(123);

2. String.Format ※(內部是使用StringBuilder)

 string exampleA = string.Format("{0}{1}", "string", 123);

github連結(Vs2015) : 點我下載