大家来谈谈StringBulider

MSDN123 2004-01-11 04:57:04
大家来谈谈StringBulider
...全文
78 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
速马 2004-01-12
  • 打赏
  • 举报
回复
StringBulider不能保证线程安全,全追求速度去了
renrenqq 2004-01-12
  • 打赏
  • 举报
回复
StringBulider上可以处理仅限于替换和添加或者删除字符串时。
因为string每次修改后都是抛弃对旧的字符串的引用而产生一个新字符串并引用他,这样在系统中会产生一些垃圾,需要垃圾回收器来处理,如果这种垃圾多了效率将下降的很厉害。
StringBulider对字符串的修改就在本地址空间进行,大大提高了效率,但在添加或者删除还是效率低下。
凯龙 2004-01-11
  • 打赏
  • 举报
回复
我记得有本书专门说过这个问题,结论是StringBuilder速度要快得多,但少量数据时看不出太明显的差别。
具体用法是:
System.Text.StringBuilder sb = new System.Text.StringBuilder("");
sb.Append("Hello");
sb.AppendFormat(",{0}","World");
//sb的结果为 Hello,World
loulanlouzhu 2004-01-11
  • 打赏
  • 举报
回复
string 定义的字符串是不可变的!!
例如:string strStr = "string";

你要想对strStr增加或减少字符,运行是会重新创建一个实例,而不是在原来的地方增减,这样增加了处理开销!

而stringbuilder则不会!
yanransoft 2004-01-11
  • 打赏
  • 举报
回复
stringbuilder 比string 的功能更强,主要是能够增加减少字符串的长度等。
string 明显比stringbuilder占用系统资源少啊,所以在一般情况下,主要应用string。
string 是简单数据类型(传值)吧?
跋涉者 2004-01-11
  • 打赏
  • 举报
回复
我不大明白 为什么,微软不在StringBuilder里面把字符串的有些功能要放到String里面处理
孟子E章 2004-01-11
  • 打赏
  • 举报
回复
StringBulider
是高效的字符串处理的类
loulanlouzhu 2004-01-11
  • 打赏
  • 举报
回复
msdn

有什么问题!?

110,561

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧