StringBuild,StringFormat," "+" " 三种方法速度测试

测试方式:

Stopwatch sw = new Stopwatch();
sw.Start();
string tmp = "";
StringBuilder sb = new StringBuilder();
for (int i = 0; i < 10000; i++)
{
    //tmp += "|" + i;
    sb.Append("|");
    sb.Append(i.ToString());
    //tmp = string.Format("{0}{1}{2}", tmp, "|", i);
}
sw.Stop();
Console.WriteLine(sb.ToString());
Console.WriteLine(sw.ElapsedMilliseconds);
Console.Read();

创建一个1万次for循环,把i的数字相加,并以|分割。

不同类型组合StringFormat会比+稍快一些。但是组合多了之后反而比+更慢。

3个参数以内且不同类型或者格式复杂用StringFormat合适。(很长的字符串比"+"更慢)

大于3个参数,相同类型比较多,用+。

更加复杂考虑StringBuild

名称 速度
StringBuild 2ms
StringFormat 655ms
+和StringFormat配合 172ms
+ 181ms

注:+和StringFormat配合是指:tmp += string.Format("{0}{1}", "|", i);

时间: 2024-12-11 00:00:22

StringBuild,StringFormat," "+" " 三种方法速度测试的相关文章

一台主机搭建多网站,使用三种方法

首先,在保证互联互通的情况下,宿主机作为客户端,虚拟机作为服务端.1.网卡点击虚拟机界面右下角,打开设置2.选择网络适配器,添加3.依照步骤依次点击4.需要注意的是,此时要选择"仅主机模式"然后点:完成5.此时发现,会有两块网卡然后点击:确定6.当硬件重新加载好之后,下面更改适配器设置7.此时我们先禁用一下蓝牙,右击然后禁用就可以了,之后更改IP ,右击点属性8.依照图示选择9.选择:使用下同的IP地址IP地址可以自行填入,前三位要与后面我们要填的相对应填好之后,确定就可以了10.同样

DataTable数据批量写入数据库三种方法比较

DataTable数据批量写入数据库三种方法比较 标签: it 分类: C#1)   insert循环插入:2)   sqldataadapter.update(dataset,tablename);3)   sqlbulkcopy.WriteToServer(datatable); 1.生成测试的datatable表,表结构如下:UniqueID(主键,自动增长)   |   CompanyName   |   CompanyCode   |   Address   |   Owner   |

MySQL数据库的备份与恢复的三种方法

MySQL数据库的备份与恢复的三种方法 1.利用mysqldump实现从逻辑角度完全备份mysql,配合二进制日志备份实现增量备份 2.利用lvs快照从物理角度实现几乎热备的完全备份,配合二进制日志备份实现增量备份 3.利用percona公司的xrabackup实现完全热备份与增量热备份 实验环境:RHEL5.8 ,SElinux关闭,MySQL是tar包初始化安装版本5.5.28 一.测试环境准备 1.1 mysql的安装就不说了,见http://laoguang.blog.51cto.com

DataTable 数据批量写入数据库三种方法比较

DataTable数据批量写入数据库三种方法比较 1)   insert循环插入: 2)   sqldataadapter.update(dataset,tablename); 3)   sqlbulkcopy.WriteToServer(datatable); 1.生成测试的datatable表,表结构如下: UniqueID(主键,自动增长)   |   CompanyName   |   CompanyCode   |   Address   |   Owner   |   Memo 共6

Oracle数据库备份与恢复的三种方法

转自blueskys567原文Oracle数据库备份与恢复的三种方法, 2006-10. 有删改 Oracle数据库有三种标准的备份方法,它们分别是导出/导入(EXP/IMP).热备份和冷备份. 导出备件是一种逻辑备份,冷备份和热备份是物理备份. 一. 导出/导入(Export/Import) 利用Export可将数据从数据库中提取出来,利用Import则可将提取出来的数据送回到Oracle数据库中去. 1. 简单导出数据(Export)和导入数据(Import) Oracle支持三种方式类型的

ubuntu/linux mint 创建proc文件的三种方法(二)

在做内核驱动开发的时候,可以使用/proc下的文件,获取相应的信息,以便调试. 大多数/proc下的文件是只读的,但为了示例的完整性,都提供了写方法. 方法一:使用create_proc_entry创建proc文件(简单,但写操作有缓冲区溢出的危险): 方法二:使用proc_create和seq_file创建proc文件(较方法三简洁): 方法三:使用proc_create_data和seq_file创建proc文件(较麻烦,但比较完整): 示例四:在proc文件中使用内核链表的一个示例(用的方

ubuntu/linux mint 创建proc文件的三种方法(四)

在做内核驱动开发的时候,可以使用/proc下的文件,获取相应的信息,以便调试. 大多数/proc下的文件是只读的,但为了示例的完整性,都提供了写方法. 方法一:使用create_proc_entry创建proc文件(简单,但写操作有缓冲区溢出的危险): 方法二:使用proc_create和seq_file创建proc文件(较方法三简洁): 方法三:使用proc_create_data和seq_file创建proc文件(较麻烦,但比较完整): 示例四:在proc文件中使用内核链表的一个示例(用的方

【机器学习算法-python实现】协同过滤(cf)的三种方法实现

(转载请注明出处:http://blog.csdn.net/buptgshengod) 1.背景 协同过滤(collaborative filtering)是推荐系统常用的一种方法.cf的主要思想就是找出物品相似度高的归为一类进行推荐.cf又分为icf和ucf.icf指的是item collaborative filtering,是将商品进行分析推荐.同理ucf的u指的是user,他是找出知趣相似的人,进行推荐.通常来讲icf的准确率可能会高一些,通过这次参加天猫大数据比赛,我觉得只有在数据量非

C#发送邮件三种方法(Localhost,SMTP,SSL-SMTP)

原文:C#发送邮件三种方法(Localhost,SMTP,SSL-SMTP) 最近公司由于一个R&I项目的需要,用户要求在购买产品或出货等一些环节,需要发送邮件提醒或者说每周一让系统自动采集数据发送一封E-mail,因此我也就找来相关资料,写了一个Demo分享给大家,大家共同学习学习.通过.Net FrameWork 2.0下提供的“System.Net.Mail”可以轻松的实现,本文列举了3种途径来发送:1.通过Localhost:2.通过普通SMTP;3.通过SSL的SMTP;下面一个一个来