String类的常见构造方法
- String类创建对象地址解析
创建字符串对象时,会先到串池里找有没有已有的,有就直接给对象地址,没有则新创建一个字符串。
通过双引号直接创建的字符串会统一存放在串池里,而通过new创建出来的对象会在堆内存中开辟一块内存空间。
s3是由常量加上变量,会额外产生一个StringBuilder类型的数据,再转换成String类型,二者都不在串池里。
java有常量优化机制,常量与常量相加时,在编译的字节码文件中直接相加合并,所有s1==s2为true。
String方法小结