String字符串性能优化的几种方案(17)

public class test5 {public static void main(String[
args) {
String s1=new String(\"ab\");s.intern();String s2=\"ab\";System.out.println(s1==s2);String s3=new String(\"ab\")+new String(\"cd\");s3.intern();String s4=\"abcd\";System.out.println(s4==s3);

1.6版本

执行结果:

fasle false

分析:

执行第一部分时:

1.代码编译时 , 先在字符串常量池里创建常量“ab\";在调用new时 , 将在堆中创建一个String对象 , 字符串常量创建的“ab\"存储到堆中 , 最后堆中的String对象返回一个引用给s1 。

推荐阅读