写段相同的代码测试一下两者的性能,看两者各自的用时分别是多长时间:
第一段:
public static void UserString() { string @string = ""; DateTime startTime = DateTime.Now; for (int i = 0; i < 10000; i++) { @string += "a"; } DateTime endTime = DateTime.Now; TimeSpan timeSpan = endTime - startTime; Console.WriteLine(timeSpan); }
第二段:
public static void UserStringBulider() { StringBuilder strBulider = new StringBuilder(); DateTime startTime = DateTime.Now; for (int i = 0; i < 1000000; i++) { strBulider.Append("b"); } DateTime endTime = DateTime.Now; TimeSpan timespan = endTime - startTime; Console.WriteLine(timespan); }
执行完成后:
方法 执行 次数 耗时
UserString : 1万次 0.468750
UserStringBulider: 100万次 0.312500
从上面的比较结果中,可以看出来,StringBulider性能确实比String的效率高