1.String类是基本数据类型还是引用数据类型?为什么字符串的长度不可变?
String为引用数类型,因为地址值不可更改,只能创建新的地址
2.String s = new String("abc");这句代码创建了几个对象?分别在内存中的哪个区域创建?
String s = "abc";创建了几个对象,分别在内存中的哪个区域创建?
String s = new String("abc");创建了两个对象,new String会在堆内存中创建地址值,“abc”会在常量池中创建字符串常量
String s = "abc";创建了一个对象,在常量池中创建一个字符串常量
3.StringBuilder的作用,为什么要使用StringBuilder
StringBuilder中的对象内容时可变的,使用StringBuilder可以减少内存占用,提高效率 |