String和StringBuilder的区别
String的特点
String在创建之后长度内容是不可变,String是用引用类型,其底层操作的还是字符数组。
当拼接一个字符串,都会产生一个新的对象。
String str1 = "String";
String str2 = "Hello" + str1;
以上两种创建方式直接赋值和字符串拼接的产生的,保存在字符串常量池中的;
如果是直接通过new方式创建的,保存在堆中的;
String str3 = new String("Hello World!");
上面这创建方式会创建2个对象:
第一个:字面量“Hello World!”
---Java会创建一个String对象表示的字面量“Hello World!”,并将其存入常量池;
第二个:new String()
---new String()时会在创建一个字符串,并引用字面量的内容,str3存的是new String()对象的地址;
String的优缺点
优点:String类提供了丰富的关于操作字符串的方法,例如:获取字符串长度,截取子串,获
共有 0 条评论