A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

1.String类是基本数据类型还是引用数据类型?为什么字符串的长度不可变?
解:String类是引用数据类型。因为底层原理是由字节数组(byte[])组成,一个字符串对象在堆内存开辟空间或者在字符串常量池里,当长度改变,地址值将改变指向别的对象空间,就不再是原来的对象了。

2.String s = new String("abc");这句代码创建了几个对象?分别在内存中的哪个区域创建?
   String s = "abc";创建了几个对象,分别在内存中的哪个区域创建?
解:第一个创建了2个对象,一个指向堆内存开辟的对象空间,另一个字符串对象从堆内存对象空间指向字符串常量池的对象。
      第二个创建了1个对象,指在堆内存里字符串常量池里的字符串对象。

3.StringBuilder的作用,为什么要使用StringBuilder
解:可变字符串序列。String每次拼接字符串都会创建新的对象,浪费时间、空间。用StringBuilder的话,不需要创建对象,只需要添加就可以改变内容。

点评

66666  发表于 2019-6-24 14:31
回复 使用道具 举报 2 0
您需要登录后才可以回帖 登录 | 加入黑马