Java string.concat()和+;操作人员

Java string.concat()和+;操作人员,java,Java,可能重复: 以下两者之间有什么区别吗 String A = "Hello"; String B = A.concat("Testing"); 及 是的,我知道输出没有任何差别。想知道是否有任何技术上的差异。谢谢 本例中没有 如果将多个字符串与+(例如,“Hello”+user+“!”)连接起来,当前编译器将使用+运算符实现+运算符,因为这比首先为“Hello”+user创建字符串,然后创建最终字符串要快。对于concat(),它们可能不会这样做,因此这里会有技术上的区别 Edit:另请参见和

可能重复:

以下两者之间有什么区别吗

String A = "Hello";
String B = A.concat("Testing");

是的,我知道输出没有任何差别。想知道是否有任何技术上的差异。谢谢

本例中没有

如果将多个字符串与+(例如,
“Hello”+user+“!”
)连接起来,当前编译器将使用+运算符实现+运算符,因为这比首先为
“Hello”+user
创建字符串,然后创建最终字符串要快。对于
concat()
,它们可能不会这样做,因此这里会有技术上的区别


Edit:另请参见和。

concat
无论如何只接受一个字符串进行连接,因此通过
concat
表示
“Hello”+user+“!”
会很麻烦。不过,我相当肯定.NET的
String.Concat(params String[])
使用了
StringBuilder
,因为编译器将
+
转换为
String A = "Hello";
String B = A + "Testing";