簡體   English   中英

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

[英].Net: better equiv for “ ” (space character)?

我正在使用字符串構建器作為日志記錄過程的一部分。 我使用的分隔符是“”。 如何以比“”更有效的方式輸出此char。

例如:

sb.Append(" ");

或者這是可以接受的方式嗎?

提前致謝

如果您擔心每次都會創建一個新的字符串對象,請不要擔心。 編譯器將對其進行優化,以便在每次調用時使用相同的字符串對象。

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

您可能認為有一個替代方案,如string.Empty for "" 但是沒有這樣的東西,所以使用" "是可以的。

這很好。

但是,您可能希望稍微提高抽象級別:

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

    return sb;
}

在某處定義const char seperator = ' '你可能會更好。 然后使用sb.Append(seperator)

如果稍后您決定使用(例如)逗號分隔,這將使代碼更易於維護。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM