清空StringBuilder的三种方法及效率

StringBuilder是一个可变的字符序列。此类提供一个与 StringBuffer 兼容的 API,但不保证同步。该类被设计用作 StringBuffer 的一个简易替换,用在字符串缓冲区被单个线程使用的时候(这种情况很普遍)。

大家知道对于字符串频繁拼接是使用stringbuilder.Append方法比使用string+=方法效率高很多,但有时需要清空stringbuilder时却不知道怎么清空,因为它没有clear或empty的方法。那用什么方法呢?在网上搜了一下大概一下三种方法。

1、Remove

例:

StringBuilder val = new StringBuilder();
val.Append("....");
val.Remove(0,val.Length);//清空

2、Replace

StringBuilder val = new StringBuilder();
val.Append("....");
val.Replace(val.ToString(), "");//清空

3、Length

StringBuilder val = new StringBuilder();
val.Append("....");
val.Length = 0;//清空

StringBuilder val = new StringBuilder();
val.Append(“….”);
val.Length = 0;//清空