以下代码段实习了一个字符串。
String str1="my";
String str2="string";
String concat1=str1+str2;
concat1.intern();
System.out.println(concat1=="mystring");
表达式concat1=="mystring"
返回true
,因为concat1
已被实习。
如果给定的字符串mystring
更改string
为如下代码段所示。
String str11="str";
String str12="ing";
String concat11=str11+str12;
concat11.intern();
System.out.println(concat11=="string");
比较表达式concat11=="string"
返回false
。持有的字符串concat11
似乎没有被拘留。我在这里俯瞰什么?
我已经在 Java 7 上进行了测试,更新 11。
编辑:
整个代码:
package test;
public final class Test
{
public static void main(String... args)
{
String str11="my";
String str12="string";
String concat11=str11+str12;
concat11.intern();
System.out.println(concat11=="mystring");
String str1="str";
String str2="ing";
String concat1=str1+str2;
concat1.intern();
System.out.println(concat1=="string");
}
}