日期:2014-05-20  浏览次数:21058 次

string.Format和stringbulider.AppendFormat 使用效能差别大吗?
之前很多sql是用string.Format来做的,想改为stringbulider.AppendFormat(),执行的sql拼接大概100多次吧,有修改的必要吗?

------解决方案--------------------
关键是看string拼接的次数,因为string拼接每次都是 new 一个string
------解决方案--------------------
如果是10毫秒级别的改进就没多大意义
还是该以代码清晰性为主
------解决方案--------------------
用stringbulider吧,那么少的拼接数量性能提升不明显,但毕竟更考究点。
------解决方案--------------------
string类其实并不是引用变量。其在每次赋值时并不是直接的修改原来数据,而是创建新的字符串。StringBuilder恰是针对这点设计的。所以在多次拼接时我们一般都不是用string。
------解决方案--------------------
看看这个

http://www.cnblogs.com/allenlooplee/archive/2005/06/08/169924.html

文章给出了一个参照的临界值-600次

少量的字符串连接不推荐使用StringBuilder,即使事先指定初始化长度