1.String类是基本数据类型还是引用数据类型?为什么字符串的长度不可变?
引用数据类型,在没有开辟内存空间时String的值在创建后不可以改变
相当于定义了一个固定长度的数组
2.String s = new String("abc");这句代码创建了几个对象?分别在内存中的哪个区域创建?
String s = "abc";创建了几个对象,分别在内存中的哪个区域创建?
(1) String s = new String("abc");创建啦两个对象,一个在堆内存新开辟的一个空间里一个在常量池中
(2) String s = "abc"; 创建了一个,在堆内存的常量池中
3.StringBuilder的作用,为什么要使用StringBuilder
对任意数据进行拼接,因为StringBuilder是用于大量和多次的拼接中并且可以拼接任意数据
是一个字符串缓冲区可以提高拼接的效率 |