String字符串连接时String对象如何不可变

时间:2017-05-06 13:17:57

标签: java

请考虑以下示例,

String str1="Amazon ";
String str2="Netflix";
String str3=str1+str2;
String str4="Amazon Netflix";
System.out.println(str3.equals(str4));
if (str3==str4)
{
    System.out.println("They Match");
}
else
{
    System.out.println("They dont Match");
}

我们知道String对象是不可变的,但是为什么java会创建另一个字符串对象str4,因为str3引用了" Amazon Netflix" 我知道我们可以使用str3.equals(str4));但只是好奇str4如何发生。 有人可以解释一下。

0 个答案:

没有答案