您的位置:首页 > 编程语言 > C#

C#转换为String的效率测试

2010-10-22 19:18 369 查看
  今天早上突然想起转换string的效率问题,于是就在百度和google查了个遍,但是似乎众说纷纭,只好自己亲自东西测试下了。

  先来说说常用的方式吧:(string),Convert.ToString(),ToString().

  代码如下:

测试代码

protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
for (int i = 0; i < 5; i++)
{
WorkTime();
}
}
}

private void WorkTime()
{
DateTime dt1 = DateTime.Now;

for (int i = 0; i < 100000000; i++)
{
object a = new object();
a = "abc";
//string b = Convert.ToString(a);
//string b = a.ToString();
string b = (String)a;
}
DateTime d2 = DateTime.Now;
Response.Write(d2 - dt1+"<br />");
}


逐个执行,最后结果:

(String)执行效果图:

平均1.33秒;

ToString()执行效果图:

平均1.81秒;

Convert.ToString()执行效果图:

平均2.6秒;

(String)效率最好,然后是ToString(),最后是Convert.ToString()效率最差;

最大的区别:Convert.ToString(null)不会报错,null如果ToString()会报错!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: