我已经在这里阅读了一些帖子,常见的建议是,如果加入三个字符串,stringbuilder是最有效的。
所有变量都是其他属性。
public string Summary
{
get
{
return Name.Replace("_", " ") + "<strong>[" + Total + " Devices - " + BadCount + " Offline, " + PendingCount + " Pending]</strong>";
}
}
我加入四,是一个简单的连接,还是我应该使用stringbuilder?看起来有点矫枉过正。
答案 0 :(得分:8)
在这种情况下使用最可读的内容。否则它是premature optimizatio n。
我会使用String.Format
:
String result = String.Format("{0}<strong>[{1} Devices - {2} Offline, {3} Pending]</strong>"
, Name.Replace("_", " ")
, Total
, BadCount
, PendingCount);
return result;
即使字符串连接也不是那么糟糕,因为字符串存储在intern pool中。因此,如果您第二次使用字符串,则不会创建它,但会使用已有的引用。
根据经验:
String.Format
+
(字符串连接)StringBuilder
答案 1 :(得分:2)
使用String.Format
public string Summary
{
get
{
return String.Format(
"{0}<strong>[{1} Devices - {2} Offline, {3} Pending </strong>",
Name.Replace("_", " "), Total, BadCount, PendingCount);
}
}