社区
.NET技术前瞻
帖子详情
String StringBuilder 效率问题
qiushuangju
2010-09-01 05:51:37
在什么情况下String 的效率要比StringBuilder 高呢????
还麻烦说一下原因
...全文
182
18
打赏
收藏
String StringBuilder 效率问题
在什么情况下String 的效率要比StringBuilder 高呢???? 还麻烦说一下原因
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
18 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
nazi0524
2010-09-06
打赏
举报
回复
每天回帖有分加。。。
paual779
2010-09-06
打赏
举报
回复
字符串频繁操作用StringBuilder
简单操作使用string.
其性能之差就是在什么时候使用。 如果你用StringBuilder 就做字符串初始化,其效率没有string高。
反之, 就是StringBuilder的高效优势!
shichao102471077
2010-09-06
打赏
举报
回复
每天回帖有分加。。。
以专业开发人员为伍
2010-09-05
打赏
举报
回复
当你在键盘上打这两个词的时候。
青年庞
2010-09-05
打赏
举报
回复
体会可变不可变,就一次可变就慢,多次可变就快
woshierbiluanzi
2010-09-03
打赏
举报
回复
新手学少问 写为什么。 知道就行了。
flyerwing
2010-09-03
打赏
举报
回复
[Quote=引用楼主 qiushuangju 的回复:]
在什么情况下String 的效率要比StringBuilder 高呢????
还麻烦说一下原因
[/Quote]
大量拼节字符船时请使用SB,因为SB的内存很省.
andy1118
2010-09-03
打赏
举报
回复
andy1118
2010-09-03
打赏
举报
回复
infim
2010-09-03
打赏
举报
回复
http://www.cnblogs.com/kid-li/archive/2006/10/18/532174.html
还有给你介绍一本书《c# 高级编程第六版》 觉得书上讲的很详细。
winsharp
2010-09-02
打赏
举报
回复
频率较低 string 较短 可能比stringbuilder 高
stringbuilder
lchy110
2010-09-02
打赏
举报
回复
[Quote=引用 6 楼 porschev 的回复:]
string a = "1";
string b = "2";
a +=b;
最后出来的a和以前的a在内存中不是指向同一位置,以前的a还在。。相加出来的a是新分配的内存空间
而stringbuilder追加过程不会新分配内存空间。。。。避免资源的浪费
[/Quote]
+1
你如果只赋值一次的话就没必要用stringbuilder stringbuilder适合多次赋值这样不会每次都去分配一个内存空间
porschev
2010-09-01
打赏
举报
回复
string a = "1";
string b = "2";
a +=b;
最后出来的a和以前的a在内存中不是指向同一位置,以前的a还在。。相加出来的a是新分配的内存空间
而stringbuilder追加过程不会新分配内存空间。。。。避免资源的浪费
qiushuangju
2010-09-01
打赏
举报
回复
[Quote=引用 3 楼 huanshayi 的回复:]
1楼说的是前提,如果基本上只用一次赋值首选当然是 String 啦~
[/Quote]
能说一下 为什么吗???
wuyq11
2010-09-01
打赏
举报
回复
string 是不可变的,增加时每次都要生成新的字符串,因此性能比较低。
StringBuilder表示可变字符串
要频繁的使用字符串拼接操作的时候一般用StringBuilder
http://www.codeproject.com/KB/dotnet/StringsInDotNet.aspx
huanshayi
2010-09-01
打赏
举报
回复
[Quote=引用 1 楼 peter200694013 的回复:]
StringBuilder肯定比String要高,但是前提是使用频率比较高的情况下
http://hi.baidu.com/fsyiyun/blog/item/7bdb8e34d037431791ef39cf.html
[/Quote]
1楼说的是前提,如果基本上只用一次赋值首选当然是 String 啦~
qiushuangju
2010-09-01
打赏
举报
回复
难道 就没有情况是 String 的效率要比StringBuilder 高吗??
Peter200694013
2010-09-01
打赏
举报
回复
StringBuilder肯定比String要高,
但是前提是使用频率比较高的情况下
http://hi.baidu.com/fsyiyun/blog/item/7bdb8e34d037431791ef39cf.html
String
和
String
Builder
效率
测试
本资源为
String
和
String
Builder
效率
测试代码,可直接运行,通过测试可以得出清晰的结果
详解.NET中
string
与
String
Builder
在字符串拼接功能上的比较
string
与
String
Builder
的在字符串拼接时执行
效率
上有差异,这篇文章主要介绍了详解.NET中
string
与
String
Builder
在字符串拼接功能上的比较,感兴趣的小伙伴们可以参考一下
为什么
String
Builder
的
效率
比
String
的
效率
要高
详细的解释
String
Builder
比
String
高
效率
的原因,同时从设计层面刨析为什么
String
要设计成不可变的
C#基础——
String
和
String
Builder
效率
测试
String
和
String
Builder
效率
测试
Java中
String
与
String
Builder
处理字符串
效率
存在差异的源码分析
申明一点:这篇博客只讨论
string
builder
中append(
String
str)方法;请看清楚,参数类型为
String
;首先:字符串实际上就是一个char数组,也就是说
String
对象的值是保存在char[]中的;存储具体值的char[]在
String
中:可以看到在
String
中存储字符串的是用final修饰的不可变char[];在
String
Builder
中:其构造方法是调用的父类Abs...
.NET技术前瞻
13,347
社区成员
5,388
社区内容
发帖
与我相关
我的任务
.NET技术前瞻
.NET技术 .NET技术前瞻
复制链接
扫一扫
分享
社区描述
.NET技术 .NET技术前瞻
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章