public static void main(String[] args) {
String str1 = new StringBuilder("???").append("??").toString();
System.out.println(str1.intern() == str1);
String str2 = new StringBuffer("ja").append("va").toString();
System.out.println(str2.intern() == str2);
}
Run Code Online (Sandbox Code Playgroud)
结果:
true
false
Run Code Online (Sandbox Code Playgroud)
第一个打印true,第二个打印false.为什么结果不同?
我想打印整个字符串池,其中包含在垃圾收集之前String添加的文字和对象intern().
是否存在JDK隐含的此类操作方法?我们如何检查字符串池?