C#-StringBuilder 105

  StringBuilder这个类专门处理大量字符串操作的,比如大量字符串的拼接;之前说过string类型的字符串每次创建,拼接都会产生一个新的内存对象,系统虽然有垃圾回收机制,但是赶不上字符串短时间的频繁操作,不仅消耗大量的内存而且效能非常低下,因此当在一个循环中将大量的字符串拼接时,最好使用System.Text. StringBuilder这个类进行操作,先看个例题

  

C#-StringBuilder 105

  低效能的字符串拼接

  Stopwatch类在此用于记录拼接所耗时间;由上图可以看出只是30000次的数字类的字符串就耗费了2秒多,一会使用StringBuilder拼接字符串对比下,循环次数不敢设置太大怕死机,自己测试时尽量不要设置次数太多

  StringBuilder类的声明及其常用方法

  Append() 追加字符串,不带换行,有很多重载,自己试试,不再举例

  AppendLine() 追加字符串并换行,如果什么都不写,就只有一个换行

  Insert() 插入字符串,有很多重载,不再举例

  Replace() 替换字符串中指定的数据

  ToString() 将结果转换为字符串

  

C#-StringBuilder 105

  StringBuilder类的方法

  StringBuilder类实例化对象时可以设置容量初始大小,如果设置了下面应用时小心超出容量值出现异常,如果没有设置,容量会自动增加;主要是对其中方法的运用,没什么好说的,其他的方法,属性自己试试即可

  

C#-StringBuilder 105

  StringBuilder方法

  使用StringBuilder的Append方法进行字符串拼接30W次比之前的3W次消耗的时间还少,所以以后类似这种大量字符串的操作,最好使用StringBuilder类

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值