假设我有以下字符串常量:
const string constString1 = "Const String 1";
const string constString2 = "Const String 2";
const string constString3 = "Const String 3";
const string constString4 = "Const String 4";
现在我可以用两种方式连接字符串: 选项1:
string resultString = constString1 + constString2 + constString3 + constString4;
选项2:
string resultString = string.Format("{0}{1}{2}{3}",constString1,constString2,constString3,constString4);
在内部,string.Format使用StringBuilder.AppendFormat。现在考虑到我正在附加常量字符串,哪个选项(选项1或选项2)在性能和/或内存方面更好?
在这种情况下,选项1更好。因为它只需要在编译时分配一次内存,而选项2需要在运行时分配多次内存。