帮助解释一下为什么java7以后这两个结果不相同,感谢大佬解答
收起
字符串调用intern()方法后,如果常量池中有与这个字符串相同的就直接返回常量池中的,如果没有就把字符串加入到常量池中再返回字符串的引用,
“good”在常量池中没有,所以会加入,s1.intern()与s1是同一个引用
“java”字符串已经在常量池中了,所以s2.intern()是返回的常量池中的,s2是在堆上,不同
报告相同问题?