@Test
public void test() {
String str1=new StringBuilder("计算机").append("软件").toString();
System.out.println(str1.intern()==str1);
String str2=new StringBuilder("ja").append("va").toString();
System.out.println(str2.intern()==str2);
String str3=new StringBuilder("jd").append("k").toString();
System.out.println(str3.intern()==str3);
}
结果为:true
false
true
intern()方法确定字符串常量池中是否存在该字符串,如果存在则返回字符串常量池中保存的引用,如果不存在则返回该字符串的引用。“java”字符串已经存在于字符串常量池,不符合“首次出现”的原则。