C# Append(Environment.NewLine)和AppendLine(string.empty)之间有什么实际的区别吗?或者它只是一种风格上的选择?
据推测,所有这些线条都具有相同的效果:C# Append(Environment.NewLine)和AppendLine(string.empty)之间有什么实际的区别吗?或者它只是一种风格上的选择?,c#,stringbuilder,C#,Stringbuilder,据推测,所有这些线条都具有相同的效果: stringyBuilder.Append(Environment.NewLine); stringyBuilder.AppendLine(string.Empty); stringyBuilder.AppendLine(); (stringyBuilder是StringBuilder对象,如果不明显的话) …那么,是一个比另一个更受欢迎,还是一个宗教热情的问题呢?它们在功能上都是等价的stringyBuilder.AppendLine(string.E
stringyBuilder.Append(Environment.NewLine);
stringyBuilder.AppendLine(string.Empty);
stringyBuilder.AppendLine();
(stringyBuilder是StringBuilder对象,如果不明显的话)
…那么,是一个比另一个更受欢迎,还是一个宗教热情的问题呢?它们在功能上都是等价的<代码>stringyBuilder.AppendLine(string.Empty)将向
Append
添加一个调用,这将导致一些额外的处理:
从
StringBuilder.AppendLine()的文档
将默认行终止符追加到当前StringBuilder对象的末尾
如果你问的是偏好,我想stringyBuilder.AppendLine()大多数人都会选择code>,因为它比stringyBuilder.Append(Environment.NewLine)更短,并且对性能没有影响
第一个选项和第三个选项之间没有区别,因为AppendLine
是对Append
的调用,通过System.Environment.NewLine
:
public StringBuilder AppendLine () {
return Append (System.Environment.NewLine);
}
中间的选项是次优的,因为它试图附加一个空字符串。不过,这只需要很少的时间,而且在功能上与其他两个相同。您知道第三个选项,AppendLine()
?只是一个风格选择。最后一个选项更短,需要解析的内容更少。别忘了stringyBuilder.AppendFormat({0}),Environment.NewLine)代码>检查参考源代码总是好的stringyBuilder.AppendLine()
只是stringyBuilder.Append(Environment.NewLine)
的快捷方式:
public StringBuilder AppendLine () {
return Append (System.Environment.NewLine);
}