关于如何提高拼接字符串时的执行效率:
StringBuilder sb = new StringBuilder();
DateTime dt = DateTime.Now;
for (int i = 0; i < 20000; i++)
{
sb.Append("aaa");
}
Console.WriteLine((DateTime.Now-dt).TotalMilliseconds);
string str = "";
DateTime dt1 = DateTime.Now;
for (int i = 0; i < 20000; i++)
{
str += "aaa";
}
Console.WriteLine((DateTime.Now - dt1).TotalMilliseconds);
StringBuilder sb = new StringBuilder();
DateTime dt = DateTime.Now;
for (int i = 0; i < 20000; i++)
{
sb.Append("aaa");
}
Console.WriteLine((DateTime.Now-dt).TotalMilliseconds);
string str = "";
DateTime dt1 = DateTime.Now;
for (int i = 0; i < 20000; i++)
{
str += "aaa";
}
Console.WriteLine((DateTime.Now - dt1).TotalMilliseconds);
Console.ReadLine();
可以看出用StringBuilder的效率比string拼接高,主要是string类型是一种特殊的引用类型,赋值一次就生成新的一个对象.
所以在拼接过程中效率比较低.