这些例子之间有区别吗?我应该在哪种情况下使用哪个?
var str1 = "abc" + dynamicString + dynamicString2;
var str2 = String.Format("abc{0}{1}", dynamicString, dynamicString2);
var str3 = new StringBuilder("abc").
Append(dynamicString).
Append(dynamicString2).
ToString();
var str4 = String.Concat("abc", dynamicString, dynamicString2);
Run Code Online (Sandbox Code Playgroud)
有类似的问题:
+运算符,并且在答案中甚至没有提到它被转换为String.Concat这个问题询问每种情况会发生什么,这些例子的实际输出是什么?他们有什么不同?在哪种情况下我应该在哪里使用它们?
试图确定使用string.Format代替串联字符串是否是更好的做法,如果是这样,为什么会这样?另外,我应该注意哪些是他们的优点/缺点?
这个:
string foo = "I" + " am " + " a " + " string.";
Run Code Online (Sandbox Code Playgroud)
要么:
string bar = string.Format("{0} am a {1}.", "I", "string");
Run Code Online (Sandbox Code Playgroud)
显然过于简单的例子,只是想明确.