字符串连接:+= 运算符与连接的字符串数组
String concatenation : += operator versus string array joined
许多语言中的串联使用 +=
运算符创建一个新的字符串实例。最好使用我们最后加入的string[]
。
在Javascript中:
var myString = new Array("Hello");
myString.push(" ");
myString.push("world !");
console.log(myString.join(''));
比 :
更有效
var myString = "Hello";
myString += " ";
myString += "world !";
console.log(myString);
在 C# 中,+=
运算符是否创建新字符串?
StringBuilder 是否比使用 string[]
更有效?
在 C# 中,+= 运算符是否创建新字符串?
String
在 C# 和 Java 中是不可变的。这意味着你不能修改它。每个修改字符串的方法(+=
也执行一个方法)returns string
.
的新实例
StringBuilder
是否比在 string[]
上使用 .Join()
更有效?
StringBuilder
比在 string[]
上使用 .Join
性能更高(每次调用几纳秒)。
所以当你经常在循环或其他事情中这样做时,它确实会 "sence"。
许多语言中的串联使用 +=
运算符创建一个新的字符串实例。最好使用我们最后加入的string[]
。
在Javascript中:
var myString = new Array("Hello");
myString.push(" ");
myString.push("world !");
console.log(myString.join(''));
比 :
更有效var myString = "Hello";
myString += " ";
myString += "world !";
console.log(myString);
在 C# 中,+=
运算符是否创建新字符串?
StringBuilder 是否比使用 string[]
更有效?
在 C# 中,+= 运算符是否创建新字符串?
String
在 C# 和 Java 中是不可变的。这意味着你不能修改它。每个修改字符串的方法(+=
也执行一个方法)returns string
.
StringBuilder
是否比在 string[]
上使用 .Join()
更有效?
StringBuilder
比在 string[]
上使用 .Join
性能更高(每次调用几纳秒)。
所以当你经常在循环或其他事情中这样做时,它确实会 "sence"。