String使用方式详细总结

 1.用双引号创建

2.用new String方式创建

3.双引号相加创建

4.两个new String相加时

5.两个引用相加时

 6.双引号加new String创建或者new String加双引号创建

 6.通过 new StringBuilder.toString()或者new StringBuilder().append().toString()创建

总结:

1.只在常量池上创建常量

第一种方式

第二种方式.

2.只在堆上创建对象(指的是AA)

第一种:

String a2 = new String("A") + new String("A");

第二种:

3.在堆上创建对象,在常量池上创建常量

 附加:public String intern()

判断一个字符串是否在常量池

一个初始时为空的字符串池,它由类 String 私有地维护。

当调用 intern 方法时,如果池已经包含一个等于此 String 对象的字符串(该对象由 equals(Object) 方法确定),则返回池中的字符串。否则,将此 String 对象添加到池中,并且返回此 String 对象的引用。

原文地址:https://www.cnblogs.com/duo-duo/p/10859258.html