一般我们想要了解自己使用不同的代码来实现同一个功能哪个效率更高时,使用Stopwatch类进行测试即可,以便于提高程序开发的代码性能。
先来看个小示例,如下。 前提,先引用using System.Diagnostics;命名空间。
protected void Page_Load(object sender, EventArgs e){
Stopwatch sw = new Stopwatch();
sw.Start(); //开始计数
StringBuilder s0 = new StringBuilder();
for (int i = 0; i < 10000; i++)
{
s0.Append(i);
}
Response.Write(sw.ElapsedMilliseconds + "<br/>"); //输出所用时间 毫秒
sw.Reset(); //重置为0
sw.Start(); //开始计数
string s1 = "";
for (int i = 0; i < 10000; i++)
{
s1 = s1 + i;
}
Response.Write(sw.ElapsedMilliseconds + "<br/>");
sw.Reset();
sw.Start();
string s2 = "";
for (int i = 0; i < 10000; i++)
{
s2 += i;
}
Response.Write(sw.ElapsedMilliseconds + "<br/>");
sw.Stop();
}
执行上面的代码,得到如下结果:(这样判断那种方法效率高是不是就很明显啦)
1
822
681