Fork me on GitHub

C#转换为String的效率测试

  今天早上突然想起转换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()会报错!

posted @   磊哥|www.javacn.site  阅读(1749)  评论(3编辑  收藏  举报
编辑推荐:
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
阅读排行:
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 推荐几款开源且免费的 .NET MAUI 组件库
· 实操Deepseek接入个人知识库
· 易语言 —— 开山篇
· Trae初体验
点击右上角即可分享
微信分享提示