使用 string.concat 还是 string builder 更好?谁能解释一下我应该在什么情况下使用这两者?
有个问题here ,这解释了性能,我想了解在哪里使用 string.concat 以及在哪里避免它?
提前致谢。
最佳答案
正如您从引用源中看到的那样
http://referencesource.microsoft.com/#mscorlib/system/string.cs,206408f6325aea24
[ComVisible(false)]
public static String Concat(IEnumerable<String> values) {
if (values == null)
throw new ArgumentNullException("values");
Contract.Ensures(Contract.Result<String>() != null);
Contract.EndContractBlock();
StringBuilder result = StringBuilderCache.Acquire();
using(IEnumerator<String> en = values.GetEnumerator()) {
while (en.MoveNext()) {
if (en.Current != null) {
result.Append(en.Current);
}
}
}
return StringBuilderCache.GetStringAndRelease(result);
}
String.Concat
使用 StringBuilder
这就是为什么这两种方法大体上相同的原因。
关于c# - 使用 string.concat 还是 string builder 更好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39446933/