1.String类是基本数据类型还是引用数据类型?为什么字符串的长度不可变?
答:String类是引用数据类型,java中所有被""引起来的都可以用String实现。
字符串是常量,因此在创建后它的长度不能更改。
2.String s = new String("abc");这句代码创建了几个对象?分别在内存中的哪个区域创建?
String s = "abc";创建了几个对象,分别在内存中的哪个区域创建?
答:String s = new String("abc");这句代码创建了2个对象
(1)new String()在堆内存中创建了一个对象
(2)"abc"在字符串常量池中创建了一个对象
String s = "abc";创建了1个对象,是在字符串常量池中创建了对象。
3.StringBuilder的作用,为什么要使用StringBuilder
答:StringBuilder主要的作用是对字符串进行拼接。
使用StringBuilder的好处在于,每一次做字符串拼接,都会在原本对象之上做拼接,不会创建新的对象,提高程序的效率 |