.Net:更好等于“”(空格字符)?

时间:2010-02-17 09:20:02

标签: .net

我正在使用字符串构建器作为日志记录过程的一部分。我使用的分隔符是“”。如何以比“”更有效的方式输出此char。

例如:

sb.Append(" ");

或者这是可以接受的方式吗?

提前致谢

5 个答案:

答案 0 :(得分:7)

如果您担心每次都会创建一个新的字符串对象,请不要担心。编译器将对其进行优化,以便在每次调用时使用相同的字符串对象。

答案 1 :(得分:6)

如果是单个字符,最好使用sb.Append(' ');

答案 2 :(得分:3)

您可能认为string.Empty""之类的替代方案。但是没有这样的事情,所以使用" "是可以的。

答案 3 :(得分:2)

这很好。

但是,您可能希望稍微提高抽象级别:

public static StringBuilder AppendWithSeparator(this StringBuilder sb, string value)
{
    sb.Append(value);
    sb.Append(" ");

    return sb;
}

答案 4 :(得分:2)

在某处定义const char seperator = ' '可能会更好。然后使用sb.Append(seperator)

如果稍后您决定使用(例如)逗号分隔,这将使代码更易于维护。